gpt4 book ai didi

python - 排除 'can only concatenate tuple (not "str") 到 tuple' 错误

转载 作者:行者123 更新时间:2023-11-30 23:36:52 25 4
gpt4 key购买 nike

当我尝试扩展 django 管理员用户时。我收到以下错误。

can only concatenate tuple (not "str") to tuple

这是我的 models.py 类

from django.db import models
from django.contrib.auth.models import User
from django.db.models.signals import post_save

User.add_to_class('age', models.BooleanField(default=False))

class Employee(models.Model):

user=models.OneToOneField(User)
name=models.CharField(max_length=100)
address=models.CharField(max_length=200)
designation=models.CharField(max_length=100)
email=models.CharField(max_length=100)
role=models.CharField(max_length=10)
project=models.CharField(max_length=50)
task=models.CharField(max_length=50)
avatar = models.ImageField("Profile Pic", upload_to="images/", blank=True, null=True)



def __unicode__(self):

return self.name


def ensure_profile_exists(sender, **kwargs):
if kwargs.get('created', False):
Employee.objects.create(user=kwargs.get('instance'))

post_save.connect(ensure_profile_exists, sender=User)

这是我的 admin.py 文件

from django.contrib.auth.admin import UserAdmin
UserAdmin.list_display += ('age')
UserAdmin.list_filter += ('age')
UserAdmin.fieldsets += ('age',)

我需要向 django 管理员用户添加一个名为年龄的字段,例如个人信息中的名字、姓氏、电子邮件和年龄。请有人帮助我。

最佳答案

将这些行更改为在 'age' 后添加逗号

UserAdmin.list_display += ('age')
UserAdmin.list_filter += ('age')

作为

UserAdmin.list_display += ('age',)
UserAdmin.list_filter += ('age',)

否则 python 会将 ('age') 计算为 'age' 而不是元组。

您已在第三行中正确完成了此操作UserAdmin.fieldsets += ('age',)

关于python - 排除 'can only concatenate tuple (not "str") 到 tuple' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16098934/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com