因此,我尝试添加一个动态的选择字段,它从一个json文件中获取数据。
class CreateDelivery(FlaskForm):
manufacturer = SelectField("Manufacturer", coerce=str)
def manu_list(self):
with open("manufacturers.json", "r") as file:
manu = json.load(file)
form = CreateDelivery()
form.manufacturer.choices = [(i['name'], i['data']) for i in manu['manufacturers']]我看了一下文档,在读完之后写了这篇文章,但我仍然没有在Field中获得任何数据。在获取数据时,我遗漏了什么?
发布于 2020-06-26 01:32:54
在来自gla3dr的评论之后,我重新查看了文档。因此,我继续尝试调用该函数的不同方法,直到我尝试将其放入我的routes.py文件中,并获取路由中创建的宿舍并将其传递给该函数。Low,你看它成功了。我把它清理干净了,它看起来像这样。
@app.route("/create", methods=['GET', 'POST'])
def create():
form = CreateDelivery()
with open("..\manufacturers.json", "r") as file:
manu = json.load(file)
form.manufacturer.choices = [(i['data'], i['name']) for i in manu['manufacturers']]这就是我通过从json文件导入数据来制作动态SelectFields的方法。
https://stackoverflow.com/questions/62579435
复制相似问题