将Django管理表单放置在其他文件中

问题描述

| 在Django中,是否可以将管理界面中模型的表单放置到每个应用程序的不同文件中?与可以对模型文件进行的操作相同。 例如。代替: app / admin.py   类PersonAdmin(admin.ModelAdmin):     [...]   Caradmin(admin.ModelAdmin)类     [...] 我有 app / admin / personadmin.py   类PersonAdmin(admin.ModelAdmin):     [...] app / admin / caradmin.py   Caradmin(admin.ModelAdmin)类     [...] 我想在不更改Django代码的情况下执行此操作。 这只是出于概述目的,我知道它并没有为该网站的功能打开新的可能性。 任何帮助深表感谢!     

解决方法

您是否尝试过在admin目录下创建“ 0”文件? 内容如下所示:
from personadmin import PersonAdmin
from caradmin import CarAdmin
只需按照您链接的说明进行操作,但将\“ models \”替换为\“ admin \”。试试看,看看是否可行。如果不这样做,我会感到惊讶。     ,您可以将它们放置在任意位置,只需将它们手动导入到在运行时加载的某个位置(settings.py,urls.py等)。您再也不能使用
admin.autodiscover()
了,因为这实际上是在做的:在所有应用程序中导入所有admin.py文件。 但是,如果您将所有导入都放在admin.py文件中,则可能仍可以使用
admin.autodiscover()
。此时,您还需要将分隔文件中的所有类添加到admin.py文件中的
__all__
中。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...