在Django 1.5中更改组的应用程序标签

时间:2013-06-04 18:45:39

标签: django django-models django-templates django-admin django-admin-tools

我扩展了用户模型,但现在新用户模型位于名为“account”的应用程序中,该应用程序标签为“account”。 Django模型“Groups”仍然有应用程序标签“Auth”,所以现在所有与auth有关的模型都在管理站点的不​​同应用程序中。是否可以更改“群组”的应用标签?

3 个答案:

答案 0 :(得分:1)

试试这个:

from django.db.models.loading import get_models
get_models(django.contrib.auth.models)[1]._meta.app_label = 'group' #or whatever

答案 1 :(得分:0)

如果您在管理员方面需要更多灵活性,可以尝试django-admin-tools。它可以轻松地对不同布局(标签,可折叠框等)中的模型进行重新排序和分组,还可以添加类似仪表板的功能。

答案 2 :(得分:0)

以防万一有人需要在Django 3.0+中使用它:

from django.apps import apps
apps.get_model('auth', 'Group')._meta.app_label = 'group' #or whatever, but have to be a registered app

请不要认为这会与Django内部模型处理混为一谈,例如在contrib.auth网站包中生成迁移,等等