Python 一对一现场连接,can和x27;django,请不要访问相关信息

Python 一对一现场连接,can和x27;django,请不要访问相关信息,python,django,Python,Django,所以,我已经将图片添加到用户配置文件中,效果很好,但我无法访问图片以在用户配置文件中显示它 view.py: 我在django文档中找到了什么 def profile(request): if request.user.is_authenticated(): user = User.objects.get_by_natural_key(request.user.get_username()) t = loader.get_template("profile.html")

所以,我已经将图片添加到用户配置文件中,效果很好,但我无法访问图片以在用户配置文件中显示它

view.py:

我在django文档中找到了什么

def profile(request):
if request.user.is_authenticated():
    user = User.objects.get_by_natural_key(request.user.get_username())
    t = loader.get_template("profile.html")
    c = Context({'user2': user, })
    return HttpResponse(t.render(c))
else:
    raise Http404
但是,这对我不起作用,我只是无法获取UserProfile.picture

class Employee(models.Model):
    user = models.OneToOneField(User)
    department = models.CharField(max_length=100)

u = User.objects.get(username='fsmith')
freds_department = u.employee.department
我做错了什么

您应该使用外键字段中指定的“相关名称”来访问用户配置文件,而不是类名:

u = User.objects.get(username= request.user.get_username())
s = u.UserProfile.picture
默认情况下,“related_name”与相关模型类名相同,但小写。您指定了相关的\u name=“oser”

u = User.objects.get(username= request.user.get_username())
s = u.UserProfile.picture
s = u.oser.picture