gpt4 book ai didi

python - 属性错误 : 'User_Profile' object has no attribute '__name__'

转载 作者:行者123 更新时间:2023-12-04 14:54:01 26 4
gpt4 key购买 nike

我的目标是获得我的 forms.py将电子邮件表单内容发送到我的 Django 数据库中的不同模型,从 Django 中的默认用户模型到我定制的 User_Profile 模型。我相信如果我能解决上面的错误,我的目标就会实现。
在我的 forms.py文件,我正在从 model.py 导入一个类然后在 forms.py 中再次使用该函数,这就是导致错误的原因。我在 __ name__ 上做了我的研究使用类,根据我的理解,它与在两个不同时间使用同一个类有关,它不知道要运行哪个类或其他什么。如果有人能解释一下 __name __更好的类(class)并帮助我修复错误,我将不胜感激。
这是我的 models.py :

class User_Profile(models.Model):
user = models.OneToOneField(User, null = True, blank = True, on_delete = models.CASCADE)
name = models.CharField(max_length = 200, null = True)
phone = models.CharField(max_length = 200, null = True)
email = models.CharField(max_length = 200, null = True)
profile_image = models.ImageField(null = True, blank = True)
data_created = models.DateTimeField(auto_now_add = True, null = True)

def __str__(self):
return self.name
这是我的 forms.py在另一个目录中:
class RegisterForm(UserCreationForm):
email = forms.EmailField()

class Meta():
model = User_Profile()
fields = ["username", "email", "password1", "password2"]

def __str__(self):
return self.name

最佳答案

问题不是真的关于__name__ ,这只是真正问题的症状。问题是因为在 RegisterForm 的 Meta 类中传递了一个实例。而不是类(class)。所以要修复:

    class Meta():
model = User_Profile # <-- Remove the parens
fields = ["username", "email", "password1", "password2"]

关于python - 属性错误 : 'User_Profile' object has no attribute '__name__' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68506463/

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