Django-查询与当前登录用户匹配的所有记录
我很难理解如何在视图中格式化查询,特别是对于当前登录的用户。我想显示其用户添加值与当前登录用户ID匹配的所有书籍 型号.pyDjango-查询与当前登录用户匹配的所有记录,django,django-queryset,Django,Django Queryset,我很难理解如何在视图中格式化查询,特别是对于当前登录的用户。我想显示其用户添加值与当前登录用户ID匹配的所有书籍 型号.py class books(models.Model): user_added = models.ForeignKey(User, default='1', on_delete=models.CASCADE) title = models.CharField(max_length=100) class books_list(forms.Mod
class books(models.Model):
user_added = models.ForeignKey(User, default='1', on_delete=models.CASCADE)
title = models.CharField(max_length=100)
class books_list(forms.ModelForm):
class Meta:
model = books
fields = ['user_added', 'title']
class booksListView(ListView):
def get_queryset(self):
# id = ?
我正在使用Django的用户模型和功能
forms.py
class books(models.Model):
user_added = models.ForeignKey(User, default='1', on_delete=models.CASCADE)
title = models.CharField(max_length=100)
class books_list(forms.ModelForm):
class Meta:
model = books
fields = ['user_added', 'title']
class booksListView(ListView):
def get_queryset(self):
# id = ?
视图.py
class books(models.Model):
user_added = models.ForeignKey(User, default='1', on_delete=models.CASCADE)
title = models.CharField(max_length=100)
class books_list(forms.ModelForm):
class Meta:
model = books
fields = ['user_added', 'title']
class booksListView(ListView):
def get_queryset(self):
# id = ?
您可以使用
self.request.user
筛选添加的user
:
from django.contrib.auth.mixins import LoginRequiredMixin
class booksListView(LoginRequiredMixin, ListView):
def get_queryset(self):
return books.objects.filter(user_added=self.request.user)
来自django.contrib.auth.mixins导入登录所需的mixin
类booksListView(LoginRequiredMixin,ListView):
def get_queryset(自我):
返回books.objects.filter(user\u added=self.request.user)
注意:您可以将基于类的视图限制为具有
谢谢你的回复,我得到了一个“\uuuu init\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu?当然,因为它是基于类的视图,不,我没有,谢谢你的帮助