我发现为了在Django admin viewer应用程序中显示vendor设置为null的product项,应该访问:
/admin/viewer/product/?vendor__isnull=True
但是,我不确定如何从用户界面启用它。我希望允许用户根据这个字段的null值进行过滤,但是创建一个返回HttpResponseRedirect的custom Django action不是一个好的选择,因为Django操作需要选择一些元素。
我有没有其他优雅的选择,只需要对Django管理模板进行很少的修改或不做任何修改,就可以将用户重定向到这个特定的URL?我认为最合适的两个地方是页面顶部“搜索”按钮旁边的导航栏,或者是右上角的下拉菜单,用户可以在这里注销并更改密码。有没有一个界面可以让我注入新的选项/视图?
发布于 2015-07-18 18:28:53
您不应该通过URL执行此操作。您应该修改管理员的查询集,以便它返回您想要的对象。
class MyModelAdmin(admin.ModelAdmin):
def get_queryset(self):
qs = super(MyModelAdmin, self).get_queryset()
if some_condition: # not sure what it depends on - maybe request.user?
qs = qs.filter(vendor__isnull=True)
return qshttps://stackoverflow.com/questions/31490182
复制相似问题