我有一个像这样的模型管理员
class StudentAdmin(admin.ModelAdmin):
date_hierarchy = 'dob'
def queryset(self, request):
queryset = Student.objects.filter(created_by=request.user)
return queryset
class ClassroomAdmin(admin.ModelAdmin):
list_display = ('name',)
ordering = ('name',)
def queryset(self, request):
queryset = Classroom.objects.filter(created_by=request.user)
return queryset
如您所见,我只希望出现由登录用户创建的学生和教室。在更改列表页面上,此查询似乎工作正常。如果我没有创建教室,那么我就看不到它们。
但是,当我转到“添加新”表单(例如,对于学生对象)时,即使登录用户尚未创建所有教室,您也会看到表单上列出了所有教室(此列表对于该用户来说应该是空的因为 class1 是由其他人创建的)(教室是学生的 FK)。
我错过了什么?