我正在创建一个表示用户凭据的SQLAlchemy类。
我想要有一个字段
然而,我不确定如何解决第二个问题。有没有一种安全的方法可以做到这一点(不会破坏SQLAlchemy)?
以下是示例模型:
我想要有一个字段
password
,用于存储密码的哈希值。因此,我想以以下方式覆盖其行为:
当分配
credentials.password = value
时,它实际上存储值的哈希值当比较
credentials.password == value
时,它实际上与值的哈希值进行比较
然而,我不确定如何解决第二个问题。有没有一种安全的方法可以做到这一点(不会破坏SQLAlchemy)?
以下是示例模型:
class Credentials(Base):
__tablename__ = 'credentials'
id = Column(Integer, primary_key=True)
_password = Column('password', String)
@hybrid_property
def password(self):
return self._password
@password.setter(self):
self._password = hash(self._password)