Python 显示与已登录用户(Django)相关的数据库项
在我的网站上,当用户登录时,他会被重定向到他的个人资料页面。现在我想查看他存储在数据库中的所有项目。我怎么办?谢谢 这是views.py。这是用户登录后重定向到的页面Python 显示与已登录用户(Django)相关的数据库项,python,django,database,Python,Django,Database,在我的网站上,当用户登录时,他会被重定向到他的个人资料页面。现在我想查看他存储在数据库中的所有项目。我怎么办?谢谢 这是views.py。这是用户登录后重定向到的页面 class userView(TemplateView): template_name = 'search/user.html' Html文件: <div class="add"> <div class="posted"> {% if objects_list %} {% f
class userView(TemplateView):
template_name = 'search/user.html'
Html文件:
<div class="add">
<div class="posted">
{% if objects_list %}
{% for o in objects_list %}
<div class="container_band">
<div class=album_band>
<!-- insert an image -->
<img src= "" width="100%">
</div>
<div class="info_band">
<!-- insert table info -->
<table>
<tr><th><h2>{{o.band}}</h2></th></tr>
<tr><td> Anno: </td><td> {{o.anno}} </td></tr>
<tr><td> Disco: </td><td> {{o.disco}} </td></tr>
<tr><td> Etichetta: </td><td> {{o.etichetta_d}} </td></tr>
<tr><td> Matrice: </td><td> {{o.matrice}} </td></tr>
</table>
</div>
</div>
{% endfor %}
{% endif %}
</div>
使用Django视图获取模型并生成模型数据
类用户视图(ListView):
model=Info#假设它是从模型导入的
模板名称='search/user.html'
这将列出所有内容,但您希望仅限于用户。因此,按用户id过滤输出:
类用户视图(ListView):
model=Info#假设它是从模型导入的
模板名称='search/user.html'
def get_queryset(自我):
qs=super().get_queryset()
返回qs.filter(utinte=self.request.user)
将html模板对象列表
更改为对象列表
如需进一步参考,请参见此处:请提供应用程序的
modesl.py
。我已编辑问题用户是否登录?代码假定用户已登录,并且用户名包含在请求中,用于按用户名进行筛选。是,用户已登录。但是我应该在我的Html模板中更改一些内容吗?刚刚编辑,将您的Html模板objects\u list
更改为object\u list
。啊,刚才这个词错了!谢谢!
class Info(models.Model):
utente = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE, default=1)
band = models.CharField(max_length=200)
disco = models.CharField(max_length=200)
etichetta_p = models.CharField(max_length=200)
etichetta_d = models.CharField(max_length=200)
matrice = models.CharField(max_length=200)
anno = models.PositiveIntegerField(default=0)
cover = models.ImageField(upload_to='images/', blank=True)
def __str__(self):
return self.band
class Meta:
verbose_name_plural = "Info"
ordering = ['anno']