0
我有一个EmployeeForm
带有如下所示包含PhotoForm
的字段中的一个:为什么我的WTForm HiddenField没有被设置为默认值?
class EmployeeForm(Form):
name = StringField('Full Name', validators=[DataRequired()])
title = StringField('Job Title', validators=[DataRequired()])
email = StringField('Company Email', validators=[DataRequired()])
department = StringField('Department', validators=[DataRequired()])
photo = FormField(PhotoForm)
根据一个USE_S3
配置变量是否被设置为True
或False
我想在我的照片对象的两个字段被自动设置为默认值,像这样:
class PhotoForm(Form):
image = S3ImageUploadField(base_path=app.config['UPLOAD_FOLDER'],namegen=photo_name_generator)
if app.config['USE_S3']:
image_storage_type = HiddenField('s3')
image_storage_bucket_name = HiddenField(app.config['S3_BUCKET_NAME'])
else:
image_storage_type = HiddenField('empty string')
image_storage_bucket_name = HiddenField('empty string')
然而,当我检查表单的HTML有没有隐藏字段,也不当我检查在提交数据库有任何设定值上image_storage_type
和image_bucket_name
,我无法弄清楚为什么。我检查了一些stackoverflow的问题,但他们不完全适合我的问题,因为我一起使用Flask-Admin
和WTForm
在我看来使它更复杂一些。
而且,我admin.py
文件的形式呈现如下:
class EmployeeView(ModelView):
form = EmployeeForm
我不知道这是否是对WTForm的侧面或瓶,联系身边的一个问题,但我一直在努力了很长时间才能完成这项工作。有没有人有任何想法?帮助将不胜感激。
Thanks @ jumbopap。我正要把我的头发拉出来。 –