Django管理员,隐藏模型 [英] Django admin, hide a model

查看:417
本文介绍了Django管理员,隐藏模型的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



如果我直接注销了那些注册模型的管理员网站的根页面,我想隐藏已注册到Django管理员的几个模型。 ,我不能添加新的记录作为添加新的符号+消失。



如何做到这一点?

解决方案

根据 x0nix的答案我做了一些实验。似乎从返回一个空的dict,get_model_perms 从index.html中排除模型,同时还允许您直接编辑实例。


$ b $


返回空的perms dict,因此隐藏来自admin index的模型

return {}

admin.site.register(MyModel,MyModelAdmin)
/ pre>

At the root page of the admin site where registered models appear, I want to hide several models that are registered to the Django admin.

If I directly unregister those, I am not able to add new records as the add new symbol "+" dissapears.

How can this be done ?

解决方案

Based on x0nix's answer I did some experiments. It seems like returning an empty dict from get_model_perms excludes the model from index.html, whilst still allowing you to edit instances directly.

class MyModelAdmin(admin.ModelAdmin):
    def get_model_perms(self, request):
        """
        Return empty perms dict thus hiding the model from admin index.
        """
        return {}

admin.site.register(MyModel, MyModelAdmin)

这篇关于Django管理员,隐藏模型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆