Django Admin中has_module_permission如何与Inline模型协同工作?
Django InlineModelAdmin中
has_module_permission方法的疑问 尽管有其他ModelAdmin方法可用于隐藏内联模型,但官方文档指出InlineModelAdmin与ModelAdmin共享has_module_permission特性。
该方法在ModelAdmin对象上的表现符合文档描述,但我不清楚它在InlineModelAdmin对象上的工作机制及预期表现。
class HideModuleAdmin(admin.ModelAdmin): def has_module_permission(self, request): if condition: # 按预期工作:从菜单中隐藏该模型 return False return super().has_module_permission(request) class HideTabularInlineModelAdmin(admin.TabularInline): def has_module_permission(self, request): if condition: # 未按预期工作:内联模型出现在我不想看到的地方 return False return super().has_module_permission(request)
我在需要的地方直接继承上述类,示例如下:
class SomeModelAdmin(HideModuleAdmin): pass class SomeTabularInline(HideTabularInlineModelAdmin): pass
内容的提问来源于stack exchange,提问作者Eric O.
相关产品推荐
相关产品推荐

