Python 如何在模板django中获取所有用户的图像
所以,我试着用Django写博客,现在我对评论有问题。 在每个帖子下面我都有用户的评论,包括评论作者姓名、图片和评论 课堂评论:Python 如何在模板django中获取所有用户的图像,python,django,django-templates,Python,Django,Django Templates,所以,我试着用Django写博客,现在我对评论有问题。 在每个帖子下面我都有用户的评论,包括评论作者姓名、图片和评论 课堂评论: class Comments(models.Model): body = models.TextField() author = models.ForeignKey(User, related_name= 'upser') image = models.OneToOneField(UserProfile , related_name='im')
class Comments(models.Model):
body = models.TextField()
author = models.ForeignKey(User, related_name= 'upser')
image = models.OneToOneField(UserProfile , related_name='im')
timestamp = models.DateTimeField(auto_now=True)
post = models.ForeignKey(Post, related_name='comments')
class Meta:
ordering = ('-timestamp',)
class UserProfile(models.Model):
user = models.OneToOneField(User, related_name='oser')
picture = models.ImageField(upload_to='profile_images', blank=True)
def __unicode__(self):
return self.user
所以,我有一个comments类和UserProfile类连接,在这个类中我有用户的图像
这就是我在模板中显示所有注释的内容:
{% for comment in comments %}
<li>
<div class="media" style="margin-top: 10px">
<a class="pull-left" href="#">
<img class="media-object" src={{ MEDIA_ROOT }}/{{ PLACE FOR USER'S PICTURE }} alt="" width="80px" height="80px" >
</a>
<div class="media-body">
<h4 class="media-heading">{{ comment.author}}
<small>{{ comment.timestamp }}</small>
</h4>
{{ comment.body }}
</div>
</div>
</li>
{% endfor %}
{%用于注释%中的注释]
{{comment.author}}
{{comment.timestamp}
{{comment.body}}
{%endfor%}
还有一个问题,若我在模板中有注释对象,那个么如何从模板中访问用户图像 我不知道为什么需要
image
属性,该属性是UserProfile
模型的外键
您可以在模板中执行此操作:
{{comment.author.oser.picture.url}
这样做的目的如下:
获取评论,获取作者,转到其“oser”属性,即相应的UserProfile
,然后获取图片属性的图像url
希望能有所帮助。我觉得你的模型有点奇怪,或者它不太符合你的描述: 您有一个“Comments”类(它不应该是“Comment”,因为它包含一条注释吗?),它有一个主体、作者、时间戳、它所属的帖子。。。好的但是您命名为“image”的字段实际上是用户的配置文件,对吗?此外,OneToOneField还意味着Comment(s)对象和UserProfile之间存在1对1的关系。。。很可能不是你想要的 事实上,你已经有了作者,所以这就足够让你了解这个故事了。。。所以作者是一个用户->用户配置文件->图片。或者我是否错误地理解了您的模型和问题