Python 错误:没有属性'_州';

Python 错误:没有属性'_州';,python,django,django-models,Python,Django,Django Models,我有一个模型: class User(models.Model): user_id = models.IntegerField(default=0) user_name = models.CharField(max_length=20) user_age = models.IntegerField(default=0) def __init__(self, user_id, user_name, user_age): self.user_id

我有一个模型:

class User(models.Model):

    user_id = models.IntegerField(default=0)
    user_name = models.CharField(max_length=20)
    user_age = models.IntegerField(default=0)

    def __init__(self, user_id, user_name, user_age):
        self.user_id = user_id
        self.user_name = user_name
        self.user_age = user_age
然后我尝试创建此模型的一个实例:

new_user = User(0, 'Andrew', 25)
new_user.save()
但这给了我一个错误:

'User' object has no attribute '_state'

这意味着什么?

代码缺少对超级类的调用“
\uuuu init\uuuu

def __init__(self, user_id, user_name, user_age):
    super(User, self).__init__() # <----
    self.user_id = user_id
    self.user_name = user_name
    self.user_age = user_age
def\uuuuu init\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

super(User,self)。\uuuuu init\uuuu()代码缺少对super类的调用'
\uuuuu init\uuuu

def __init__(self, user_id, user_name, user_age):
    super(User, self).__init__() # <----
    self.user_id = user_id
    self.user_name = user_name
    self.user_age = user_age
def\uuuuu init\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

super(User,self)。\uuuu init\uuu()您根本不应该定义
\uuuu init\uuu
方法。falsetru表明您需要调用超级类方法,但您在自己的版本中提供的所有功能都已由它提供。

您不应该真正定义
\uuuu init\uu
方法。falsetru表明您需要调用超级类方法,但是您在自己的版本中提供的所有功能都已经由它提供。

您可能应该使用Django的
auth
框架,它有一个
用户
模型和几个您可以使用的抽象基类。这实现了许多功能,其中包括用于保存密码和默认登录/注销/密码重置视图等的加密安全方法。您可能应该使用Django的
auth
框架,该框架有一个
User
模型和几个可供使用的抽象基类。这实现了许多功能,其中包括用于保存密码和默认登录/注销/密码重置视图等的加密安全方法。谢谢。但是,假设我想为字段设置一些默认值,那么在不定义init的情况下如何实现呢?另外,如果我只使用默认的init,那么我必须显式地传递带有名称的变量,例如new_user=user(user_id=0,user_name='Andrew',user_age=15),而我希望能够像这样发送这些值:new_user=user(0,'Andrew',15)。您已经在字段声明中定义了默认值。谢谢。但是,假设我想为字段设置一些默认值,那么在不定义init的情况下如何实现呢?另外,如果我只使用默认的init,那么我必须显式地传递带有名称的变量,例如new_user=user(user_id=0,user_name='Andrew',user_age=15),而我希望能够像这样发送这些值:new_user=user(0,'Andrew',15)。您已经在字段声明中定义了默认值。