我正在基于高度定制的 django 管理实例构建一个站点,并且遇到了用户配置文件作为 user_admin 内联的问题
长话短说,不管我在 admin.StackedInline 实例中为 max_num 和 extra 设置了什么,它允许每个用户最多 2 个配置文件 - 如果用户有现有配置文件,默认情况下会有一个空白的
有谁知道我如何调整它以仅显示单个内联配置文件而不诉诸某些 JS 前端 hack?
相关代码来自:profiles.admin.py
from django.contrib import admin
from django.contrib.auth.models import User
from django.contrib.auth.admin import UserAdmin
from profile.models import user_profile
class user_profile_admin(admin.StackedInline):
model = user_profile
fk_name = 'user'
max_num = 1
extra = 0
class user_admin_extended(UserAdmin):
inlines = [user_profile_admin, ]
admin.site.unregister(User)
admin.site.register(User, user_admin_extended)
最佳答案
我假设您使用 FK 字段来连接用户和个人资料?试试 OneToOneField 它应该在管理中只呈现一个内联。
关于Django admin - stackedInline 单实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2383987/