我在尝试显示用户的所有Announce对象时遇到问题。 我的问题是:假设我是以id=1的用户身份登录的。当我转到/users/1/时,它会显示我所有的帖子。但问题是,当我想通过转到/users/2/显示另一个id=2的用户的所有帖子时,它仍然显示我所有的Announce对象,而不是id=2的用户。在
模型.py
class Announce(models.Model):
owner = models.ForeignKey('auth.User', related_name='announces')
created_date = models.DateTimeField(auto_now_add=True)
body = models.TextField(max_length=1000)
视图.py
^{pr2}$网址.py
urlpatterns = [
url(r'users/(?P<pk>[0-9]+)/$', views.UserAnnouncesList.as_view(), name='user_announces_list'),]
用户宣布_列表.html
{% extends "account/base.html" %}
{% block content %}
{% for announce in all_announces_by_user %}
<h1>{{announce.user.username}}</h1>
<p>{{announce.body}}</p>
{% endfor %}
{% endblock content %}
我是否必须使用类似于:公告.objects.get(pk=???)?在
谢谢你的帮助!在
request.user
是登录的用户。您需要使用作为url传递的pk
。它存储在listview的kwargs
字典中:相关问题 更多 >
编程相关推荐