我需要重写django-eav应用程序管理类。在eav/admin.py
中注册了模型:admin.site.register(Value)
。我需要将列表显示添加到这个模型中。我知道修改已安装的应用程序代码是不好的做法,所以我需要重写它。但是,不知道怎么做。在我自己的app/admin.py
中,我有:
class EavValueAdmin(ModelAdmin):
list_display = ('__unicode__', 'value_text', )
#unregistering class from eav.admin
admin.site.unregister(Value)
admin.site.register(Value, EavValueAdmin)
这会给我一个错误:NotRegistered:模型值未注册。
如果我试着注释这一行:admin.site.unregister(Value)
,同样错误:AlreadyRegistered:模型值已经注册。我怎样才能克服这个问题?在
Django应用程序的加载顺序是它们在您的
settings.py
中的INSTALLED_APPS
中列出的顺序。因此,您的app
必须在django-eav
之后才能注销它:通常你的应用程序必须在内置和第三方应用程序之后。你必须测试你的项目,看看是否一切顺利后,改变顺序。在
相关问题 更多 >
编程相关推荐