0
我用了两个ForeignKey的表“帖子”连接表“用户”,一个是用户名,另一个是图标,如:如何使用Django模型的ForeignKey?
user = models.ForeignKey(UserInfo, related_name='user_name')
icon = models.ForeignKey(UserInfo, related_name='user_icon', null=True)
在我的意见,我尝试遍历表“信息”:
class AllPosts(View):
def get(self, request):
all_posts = Posts.objects.all()
return render(request, 'community.html', {
"all_posts":all_posts,
})
这是我在我的模板如何遍历:
{% for post in all_posts %}
<div class="post">
<a href="" class="user_a">
<img class="icon" src="{{ MEDIA_URL }}{{ post.icon }}">
<span class="name_span">{{ post.user }}</span>
</a>
<span class="time">发表时间:{{ post.add_time }}</span>
<span class="clicked">回复:{{ post.comment_num }}</span>
<a href="">
<img class="post_img" src="{{ MEDIA_URL }}{{ post.image }}">
<div class="article">
<h3 class="title">{{ post.title }}</h3>
<span class="content">    {{ post.content }}</span>
</div>
</a>
</div>
{% endfor %}
结果:
<img class="icon" src="/media/None">
<span class="name_span">klawens</span>
因此,post.user显示正确的结果,但图标是一个None,我不知道如何使用ForeignKey来连接我想要的确切键,以及什么是related_name?
'Posts'中的用户字段和图标字段都指向'UserInfo'中的用户名,但是我希望Posts图标指向UserInfo图标,该怎么做?
模板代码和生成的HTML不匹配。请发布实际的代码,而不是假设的情况。另外,请确保您的icon图标字段实际上有任何值。当你设置'null = True'时,它很可能会返回'None'。 – Selcuk
我编辑了它,'Posts'中的用户字段和图标字段都将用户名指向'UserInfo',但我希望Posts图标指向UserInfo图标,该怎么做? – Klawens
你的意思是UserInfo类也有一个图标列?例如,如果您的Model关系像这样'Class Post:icon = ForiegnKey(UserInfo)Class UserInfo:icon = CharField()',您可以简单地执行Post实例post.icon.icon。 – Jayground