def generate_household_composition_form(block_json, data, error_messages):
class HouseHoldCompositionForm(FlaskForm):
question_errors = {}
household = FieldList(FormField(get_name_form(block_json, error_messages)), min_entries=1)
def map_errors(self):
ordered_errors = []
if 'household' in self.errors and self.errors['household']:
for index, field in enumerate(self.household):
ordered_errors += map_field_errors(field.errors, index)
return ordered_errors
def answer_errors(self, input_id):
return [error[1] for error in self.map_errors() if input_id == error[0]]
def remove_person(self, index_to_remove):
popped = []
while index_to_remove != len(self.household.data):
popped.append(self.household.pop_entry())
popped.reverse()
for field in popped[1:]:
self.household.append_entry(field.data)
def serialise(self, location):
"""
Returns a list of answers representing the form data
:param location: The location to associate the form data with
:return:
"""
return serialise_composition_answers(location, self.household.data)
return HouseHoldCompositionForm(MultiDict(data))
household_composition_form.py 文件源码
python
阅读 25
收藏 0
点赞 0
评论 0
评论列表
文章目录