【发布时间】:2020-01-01 18:06:21
【问题描述】:
我正在尝试用一个参数定义一个 Flask 表单。这是我的方法:
forms.py
class RegisterPatternForm(FlaskForm):
cursorPatients = MongoClient('localhost:27017').myDb["coll"].find({"field1": self.myParam}).sort([("id", 1)])
patientOpts = []
for pt in cursorPatients:
row = (str(pt.get("id")), "{} {}, {}".format(pt.get("surname1"), pt.get("surname2"), pt.get("name")))
patientOpts.append(row)
patients = SelectMultipleField('Select the patient', validators=[Optional()], choices=patientOpts)
submit = SubmitField('Register')
def __init__(self, myParam, *args, **kwargs):
super(RegisterPatternForm, self).__init__(*args, **kwargs)
self.myParam = myParam
routes.py
myParam = 5
form = RegisterPatternForm(myParam)
基本上,我想读取routes.py 上定义的变量myParam,格式为RegisterPatternForm。 routes.py 中的参数插入有效,RegisterPatternForm 中的 __init__ 方法也有效。它失败的地方是读取以cursorPatients开头的行上的字段。
因此,我的问题是,我该如何解决这个问题才能在表单中读取myParam 值?
【问题讨论】:
标签: python flask flask-wtforms