0
將FlaForce和SQLAlchemy與WTForms結合使用。從用戶名和電子郵件字段獲取數據並確保它不在數據庫中。這是我現在要做的。將參數傳遞給成爲函數關鍵字的類
class IsUnique(object):
def __init__(self, db_field=None):
self.db_field = db_field
def __call__(self, form, field):
data = field.data
if self.db_field=='name':
if User.query.filter_by(name=data).first() != None:
raise ValidationError('Sorry, that username is taken.')
if self.db_field=='email':
if User.query.filter_by(email=data).first() != None:
raise ValidationError(
'Sorry, that email address has already been registered.'
)
我想這樣做是對db_field參數傳遞給類實例作爲一個字符串,並將其傳遞到User.query.filter_by(db_field=data
。不幸的是,我所知道的是如何使用if語句,該語句有效,但有點麻煩。有一種方法可以做到這一點,但我不知道如何。