chr*_*aka 7 django django-generic-views python-3.x django-class-based-views django-1.8
我有一个基于类的 ListView,我想通过登录的 user_id 过滤对象,因为项目模型有一个指向 settings.AUTH_USER_MODEL 的外键
class ItemListView(LoginRequiredMixin, StaffRequiredMixin, ListView):
model = Item
template_name = "items/list_items.html"
Run Code Online (Sandbox Code Playgroud)
在基于函数的视图中,我可以使用 request.user 但不能在基于通用类的视图中执行此操作。关于如何最好地做到这一点的任何想法?
这是项目模型
class Item(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL)
description = models.CharField(max_length=300)
Run Code Online (Sandbox Code Playgroud)
小智 14
您可以覆盖 ListView 中的 get_queryset 函数并过滤 self.request.user
def get_queryset(self):
return Item.objects.filter(user=self.request.user)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5860 次 |
| 最近记录: |