将单个字段添加到组 django admin
Adding a single field into group django admin
我想知道如何在 DjangoAdmin 的字段集中将单个字段添加到一组字段中。我有这个:
class SecretarioAdmin(UserAdmin):
model=Secretario
def get_fieldsets(self, request, obj=None):
fieldsets = list(super(UserAdmin, self).get_fieldsets(request, obj))
# update the `fieldsets` with your specific fields
fieldsets.append(('Administrar', {'fields': ('administrar')}))
return fieldsets
这是我的模型:
class Secretario(Usuario):
administrar = models.OneToOneField(CentroEducativo, on_delete=models.CASCADE, null=True)
这是我遇到的错误:
Unknown field(s) (i, a, r, s, m, d, t, n) specified for Secretario. Check fields/fieldsets/exclude attributes of class SecretarioAdmin.
我认为在 'administrar'
之后添加逗号 (,
) 应该可以解决您的错误。
由于错误将 administrar
视为字符元组而不是具有单个元素的元组。
正确的代码应该是这样的:
class SecretarioAdmin(UserAdmin):
model=Secretario
def get_fieldsets(self, request, obj=None):
fieldsets = list(super(UserAdmin, self).get_fieldsets(request, obj))
# update the `fieldsets` with your specific fields
fieldsets.append(('Administrar', {'fields': ('administrar', )}))
return fieldsets
推理:
在python中,()
中的单个字符串是字符串而不是单个元素的元组。
t = ('sample')
type(t)
str
t = ('sample',)
类型(t)
tuple
我想知道如何在 DjangoAdmin 的字段集中将单个字段添加到一组字段中。我有这个:
class SecretarioAdmin(UserAdmin):
model=Secretario
def get_fieldsets(self, request, obj=None):
fieldsets = list(super(UserAdmin, self).get_fieldsets(request, obj))
# update the `fieldsets` with your specific fields
fieldsets.append(('Administrar', {'fields': ('administrar')}))
return fieldsets
这是我的模型:
class Secretario(Usuario):
administrar = models.OneToOneField(CentroEducativo, on_delete=models.CASCADE, null=True)
这是我遇到的错误:
Unknown field(s) (i, a, r, s, m, d, t, n) specified for Secretario. Check fields/fieldsets/exclude attributes of class SecretarioAdmin.
我认为在 'administrar'
之后添加逗号 (,
) 应该可以解决您的错误。
由于错误将 administrar
视为字符元组而不是具有单个元素的元组。
正确的代码应该是这样的:
class SecretarioAdmin(UserAdmin):
model=Secretario
def get_fieldsets(self, request, obj=None):
fieldsets = list(super(UserAdmin, self).get_fieldsets(request, obj))
# update the `fieldsets` with your specific fields
fieldsets.append(('Administrar', {'fields': ('administrar', )}))
return fieldsets
推理:
在python中,()
中的单个字符串是字符串而不是单个元素的元组。
t = ('sample')
type(t)
str
t = ('sample',)
类型(t)
tuple