我有一个用于网络调查数据的WTForms表单构建功能。由于没有两个调查具有相同数量和类型的问题,因此必须创建每个调查的表单类。
像:
def survey_form(survey):
class SurveyForm(Form): #base class for surveys
pass
for question in survey: #add questions to survey
setattr(SurveyForm, question.id, someField(label=question.name))
return SurveyForm
现在这是我的问题:让我们说100人将参加我的调查。我想保留一个SurveyForm
有两个原因 -
1)我没有对它进行测试,但是根据每个请求构建一个新的SurveyForm的想法似乎并不是一个表现明智的决定。
2)必须保存参与者的回复;响应对象的模型也是从调查问题动态生成的类。
所以我想保留这个映射 -
对于每个调查,都必须有一个独特的调查表类对象调查响应对象。
我怎样才能做到这一点?非模块级类不可选。
重申我的问题:
从SurveyForm
对象生成survey
类。保存SurveyForm
类并在以后使用它。
从SurveyResponse
对象生成survey
类。保存SurveyResponse
类,并将其用作对survey
的回复模型。
生成类的两个问题都已完成。保存课程不是。