Python Django管理员从索引和应用程序页面排除模型
我想从管理员索引页和应用程序页隐藏一些模型。例如,我在Python Django管理员从索引和应用程序页面排除模型,python,django,django-admin,django-modeladmin,Python,Django,Django Admin,Django Modeladmin,我想从管理员索引页和应用程序页隐藏一些模型。例如,我在内联中可以看到的这些对象作为相关对象。 还有一点,我想保留使用该模型的change\u view和add\u view的功能,但不使用该模型的list\u view 试图在admin/templates/admin/*.html文件中找到任何提示,但没有找到任何有用的内容 如果没有“黑客”、猴子补丁和外部库,这可能吗?你可以试试这个 这将从索引中隐藏模型 class YourModel(admin.ModelAdmin): def g
内联中可以看到的这些对象作为相关对象。
还有一点,我想保留使用该模型的change\u view
和add\u view
的功能,但不使用该模型的list\u view
试图在admin/templates/admin/*.html
文件中找到任何提示,但没有找到任何有用的内容
如果没有“黑客”、猴子补丁和外部库,这可能吗?你可以试试这个
这将从索引中隐藏模型
class YourModel(admin.ModelAdmin):
def get_model_perms(self, request):
return {} # return empty
admin.site.register(YourModel, YourModelAdmin)
更多关于Django管理员的信息
正如所述:
如果允许在管理索引页上显示模块并访问模块的索引页,则应返回True,否则返回False。默认情况下使用User.has_module_perms()。覆盖它不会限制对视图的访问、添加、更改或删除视图
为了避免删除所有权限(如使用get\u model\u perms()
),您可以重新定义has\u module\u permission()
方法以始终返回False
@admin.register(SomeModel)
类SomeModelAdmin(admin.ModelAdmin):
def具有模块权限(自我、请求):
返回错误
看起来正是我需要的。你能解释一下它是如何工作的以及它还能影响什么吗?对我来说,它似乎可以删除一些应该存在的权限。