Python 如何从模型字段中获取项目
我是Django的初学者,如何从profile模型中获取profile_pic,并将其连接到FriendRequest模型中的“to_user”字段 我可以通过以下方式获得“to_user”字段中的用户名:Python 如何从模型字段中获取项目,python,django,Python,Django,我是Django的初学者,如何从profile模型中获取profile_pic,并将其连接到FriendRequest模型中的“to_user”字段 我可以通过以下方式获得“to_user”字段中的用户名: {% for data in sent_friend_request %} {{ data.to_user.username }} {% endfor %} 如何获得每个用户的个人资料图片 class Profile(models.Model): user = models.One
{% for data in sent_friend_request %}
{{ data.to_user.username }}
{% endfor %}
如何获得每个用户的个人资料图片
class Profile(models.Model):
user = models.OneToOneField(settings.AUTH_USER_MODEL)
profile_pic = models.ImageField()
class FriendRequest(models.Model):
to_user = models.ForeignKey(settings.AUTH_USER_MODEL)
from_user = models.ForeignKey(settings.AUTH_USER_MODEL)
def following_view(request, username):
sent_friend_request = FriendRequest.objects.filter(from_user__username=username)
context = {'sent_friend_request':sent_friend_request}
{% if data.to_user.profile_pic %}
<img src="{{ data.to_user.profile_pic }}">
{% endif %}
类配置文件(models.Model):
user=models.OneToOneField(settings.AUTH\u user\u MODEL)
profile_pic=models.ImageField()
类请求(models.Model):
to_user=models.ForeignKey(settings.AUTH_user_MODEL)
from\u user=models.ForeignKey(settings.AUTH\u user\u MODEL)
def以下_视图(请求、用户名):
已发送\u friend\u request=FriendRequest.objects.filter(来自\u user\u username=username)
上下文={'sent\u friend\u request':sent\u friend\u request}
{%if data.to_user.profile_pic%}
{%endif%}
您可以这样做:
{% if data.to_user.profile.profile_pic %}
<img src="{{ data.to_user.profile.profile_pic.url }}">
{% endif %}
{%if data.to_user.profile.profile_pic%}
profile.profile_pic.url}}“>
{%endif%}
当您希望从数据库中检索单个对象(例如这里的概要文件p
)时,应该使用get
而不是filter
。这样,您就避免了这些奇怪的for循环,只会让读者感到困惑(作为奖励,如果对象不存在,您将得到一个很好的异常,而不是静默失败).functionfollow_view
仍然是半生不熟的,因为在我看来,它只会发送最后一个用户好友请求。如果您在发布之前删除了一些代码,请确保它看起来合乎逻辑。这将显示个人资料图片。按照注释中的所有建议进行操作。所有这些都会很有帮助。@anuragal我也这么认为。但是p
无论如何都应该包含一个对象…你能在回答中解释一下为什么这样做吗?特别是反向一对一关系的默认名称。@arjun..这样做有效。data.to_user.PROFILE.PROFILE\u pic.url“PROFILE”发挥了神奇的作用。谢谢