Django admin - stackedInline 单实例

标签 django django-admin

我正在基于高度定制的 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/

相关文章:

python - 对 Django 对 MVC 的要求感到困惑,它到底是什么?

python - 在 django admin 为什么 django 添加 ?_changelist_filters 到 url?

python - 如何在 Django 1.5 中反转自定义管理 url?

python - 如何在 django 中扩展用户配置文件?

django - 如何在 Django 1.9 中将更新加入 postgres 查询作为查询集编写?

python - 将 unicode 字符编码为 un​​icode 转义序列

python - 如何将中间件添加到 App Engine 网络应用程序框架?

python - 格式化 django admin 中呈现的内联多对多相关模型

django - 从登录用户预填充管理字段

Django管理命令: using LabelCommand