Mongoengine: TypeError: __init __ () recebeu um argumento de palavra-chave inesperado
Estou usando a extensão flask-mongoengine e tenho uma classe User como esta:
class User(db.Document, UserMixin):
email = db.StringField(max_length=120, required=True, unique=True)
password_hash = db.StringField(max_length=80, required=True)
active = db.BooleanField()
fb_id = db.StringField(max_length=120, required=False)
def __init__(self, email, password, fb_id=None, active=True):
hashp = md5.md5(password).hexdigest()
self.email=email
self.password_hash=hashp
self.fb_id=fb_id
self.active=active
Mas quando eu faço um simples obtenho:User.objects.get(email = email)
Eu recebo o erro:
TypeError: __init__() got an unexpected keyword argument 'password_hash'
mas eu estou definindo o password_hash no meu init embora. Surpreendentemente, se eu excluir o todo__init__
e passar em tudo por args, funciona bem.
Então reconheço que estou fazendo algo errado no__init__
, talvez algo devido ao documento super classe? Estou bastante preso a isso, agradeceria sua ajuda.