我有一个像这样的 Django 模型:
class Tour(models.Model):
Name=models.CharField(max_length=100)
Count=models.SmallIntegerField()
PriceUnitCode=models.ForeignKey(PriceUnit)
Price=models.CharField(max_length=12)
Description=models.TextField()
ActionDate=models.CharField(max_length=16)
ActionUser=models.ForeignKey(User)
当用户登录管理站点时,我希望用户只能看到他创建的 Tour 实例(ActionUser 等于登录用户 ID 的 Tour 实例)。
如何根据登录用户过滤更改列表?
最佳答案
谢谢兄弟 我试过你的代码,但它有错误!!所以我改变了它,现在它运行良好:
class TourAdmin(admin.ModelAdmin):
def queryset(self, request):
qs = super(TourAdmin, self).queryset(request)
if request.user.is_superuser:
return qs
return qs.filter(ActionUserCode=request.user)
admin.site.register(Tour,TourAdmin)
我把代码给其他可能有这样问题的人
关于python - 过滤 Django 管理更改列表以根据登录用户显示特定行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7435623/