我正在将用户个人资料内联添加到django admin的编辑用户页面。到目前为止,唯一的问题是无论我在“额外”选项中放置什么值,页面总是显示1个额外用户配置文件记录的字段。 我实际上并不想显示任何额外的记录,但我无法获得额外的记录。希望有人可以提供帮助,这让我很难过。
以下是代码:
#admin.py
class UserProfileInline(admin.StackedInline):
model = auth_user_profiles
extra = 0
raw_id_fields = ('organisation_id','advertiser_id','division_id','rtp_id','person_id','hp_organisation_id')
exclude = ('specialist_id',)
class UserAdmin(admin.ModelAdmin):
list_display = ('username', 'email', 'first_name', 'last_name', 'is_staff', 'is_active', 'is_superuser', 'last_login', 'date_joined')
list_filter = ('is_staff', 'is_superuser', 'is_active')
search_fields = ('username','email','first_name','last_name')
inlines = (UserProfileInline,)
admin.site.unregister(User)
admin.site.register(User, UserAdmin)
这是django文档中的相关位置:https://docs.djangoproject.com/en/1.3/ref/contrib/admin/#inlinemodeladmin-options
谢谢!
答案 0 :(得分:2)
您是否尝试将max_num
设置为1?
如果max_num的值更大 比现有的相关数量多 对象,最多额外的空白 表单将添加到formset中,所以 表格的总数 不超过max_num
这来自docs about model formsets,但它也适用于InlineAdmin
。
答案 1 :(得分:2)
好的,我现在已经弄明白了。真是个愚蠢的错误。
我刚刚升级了我的django版本,但我忘了更新django管理媒体文件。
当我查看我的apache日志时,我发现了一些与inlines.js和其他几个文件有关的js erorrs。
使用django 1.3软件包中的文件更新我的admin js文件解决了这个问题。