这是模型:
class Product(models.Model):
title = models.CharField(max_length=60)
price = models.DecimalField(max_digits=6, decimal_places=2)
images = ArrayField(models.TextField())
user = models.ManyToManyField(User, related_name='products')
如何在管理面板中显示该关系,以便当我进入管理面板中的“用户”表单时,可以看到与该用户相关的产品。
答案 0 :(得分:0)
您可以为用户模型构造一个ModelAdmin
类。为此,您首先要“取消注册”由Django定义的注册,然后注册一个新的UserAdminWithProducts
。
例如:
# myapp/admin.py
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.models import User
admin.site.unregister(User)
@admin.register(User)
class UserAdminWithProducts(UserAdmin):
filter_horizontal = UserAdmin.filter_horizontal + ('products',)
有关更多信息,请参见documentation on The Django admin site [Django-doc]。