Я настраиваю форму Flask, используя WTForms с некоторыми StringField, TextAreaField. Одно из значений поля генерируется Javascript в виде списка (из динамических полей формы).
Наконец я хотел сохранить данные формы в MongoDB. Когда я читаю значение формы с помощью StringField, значение (список) изменяется на строку, а когда я вставляю его в Mongo, оно вставляется в виде строки, а не списка.
Я пытался использовать FieldList, ноJavaScript не может добавить значение в форму, если поле имеет FieldList.
Это моя WTForm
class OrgCreateForm(FlaskForm):
org_name = StringField('org_name', validators=[DataRequired()])
org_contact = StringField('org_contact')
create = SubmitField('Create')
Вот как я читаю данные из вывода JS:
<div class="form-group row">
{{ form.org_contact(class="form-control purple-border",row="5", id="output", label="comment") }}
</div>
Это мой вывод MongoDB
{'_id': ObjectId('5d9d7c1bb157cdbae3ed941b'), 'org_name': 'Microsoft', 'org_contact': '[{"emailAdd":"admin@Microsoft.com","emailDesc":"Admin Email"}]'}
Попытка использования FieldList
, как показано ниже, и значение поля кажется нулевым.
class OrgCreateForm(FlaskForm):
org_name = StringField('org_name', validators=[DataRequired()])
org_contact = FieldList(TextAreaField('org_contact'))
create = SubmitField('Create')