自定义Django管理、订单和模型位置

ee7vknir  于 2023-08-08  发布在  Go
关注(0)|答案(1)|浏览(100)

我有一个Django项目,在这个项目中,我有一个模型A的应用程序A和一个模型B的应用程序B。

# a/models.py
class A(models.Model):
    pass

个字符
因此,我在应用程序A的部分下看到模型A,模型B也是如此。
但我想改变这个位置,因为从第一个项目,我是坏的布局。
注意:我试着把BModelAdmin(admin.ModelAdmin)放在应用程序A的管理文件中,但没有成功。
请告诉我一个确切的答案。

rnmwe5a2

rnmwe5a21#

您应该使用代理模型:

# b.models.py
class B(models.Model):
    pass

class ProxyB(B):
    class Meta:
        proxy = True
        app_label = 'a'

字符串
然后您需要在a.admin或b.admin中注册代理模型。

#a.admin
from django.contrib import admin
from .models import A
from b.models import ProxyB

@admin.register(A)
class AAdmin(admin.ModelAdmin):
    pass

@admin.register(ProxyB)
class BAdmin(admin.ModelAdmin):
    pass

相关问题