问题描述
我需要一些有关此错误的帮助,我在store_user_db.py文件中创建了一个User类,该类基本上使用Fernet加密库在db中存储了加密密码。 密码存储后,我需要一个解密密码的函数,因此我在User类中创建了一个def解密_pwd函数,如下所示,问题是当我尝试在导入store_user_db后从py其他form.py文件调用此函数时使用User类,它返回错误:'module'对象没有属性'decrypt_pwd'
我错过了什么吗?如果可以的话,请以正确的方式编辑我的代码。
testvar
testvar
错误:
A: 50
B: 70
A: 70
B: 90
A: 90
B: 110
...
解决方法
尝试此代码:
#store_user_db.py
class User(db.Model):
__tablename__ = "user"
id = db.Column(db.Integer(),primary_key=True,autoincrement=True)
username = db.Column(db.String(64),unique=True)
pwd = db.Column(db.LargeBinary(),unique=True)
def __init__(self,username,pwd):
self.username = username
self.pwd = f.encrypt(pwd)
def decrypt_pwd():
key = Fernet.generate_key()
f = Fernet(key)
token = f.encrypt(pwd)
p = db.session.query(User).filter_by(username="ita_itf").first()
DESTINATION_PSW = f.decrypt(p.pwd)
return DESTINATION_PSW
#form.py
from store_user_db import decrypt_pwd
DICP_FTP_DESTINATION_PSW = decrypt_pwd()