【问题标题】:django user field (populated with django.contrib.auth) in adminadmin 中的 django 用户字段(使用 django.contrib.auth 填充)
【发布时间】:2013-01-19 14:29:47
【问题描述】:

我不知道为什么,但 Django Admin App 在模型中找不到用户字段。你能帮忙吗?

模型.py:

from django.db import models
from django.forms import ModelForm
from django.contrib.auth.models import User

class object(models.Model):
    name = models.CharField(max_length=50, )
    user = models.ForeignKey(User, editable=False)
    in_use = models.BooleanField()

admin.py:

from project.models import *
from django.contrib import admin

class ObjectAdmin(admin.ModelAdmin):
    list_display = ['name', 'user', 'in_use']

错误信息:

在 /admin/ 处配置不正确

'ObjectAdmin.fieldsets[3][1]['fields']' 指的是表单中缺少的字段 'user'。

【问题讨论】:

    标签: django django-models django-modeladmin


    【解决方案1】:

    这可能是因为user 被标记为editable=False。尝试使用readonly_fields 并将用户添加到该ModelAdmin 选项。

    【讨论】:

      【解决方案2】:

      您需要在您的设置中的 INSTALLED_APPS 中激活 django.contrib.auth 应用,并且您必须在 AUTH_PROFILE_MODULE 中设置您的配置文件模型的名称,

      AUTH_PROFILE_MODULE = "object"
      

      另外,您应该考虑更改模型的名称,Python 不会喜欢您将模型命名为“对象”

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-09-23
        • 2013-04-24
        • 1970-01-01
        • 2012-05-12
        • 2017-03-17
        • 1970-01-01
        • 2013-02-10
        相关资源
        最近更新 更多