flask - 尝试在 QuerySelectField 中填充数据时出现 Flask WTForms 错误
问题描述
我尝试从返回年份列表的函数中填充QuerySelectField。但我得到了错误
sqlalchemy.orm.exc.UnmappedInstanceError: Class 'builtins.str' is not mapped
这是我的代码:
表格.py
class TahunAuditForm(Form):
def get_list_tahun():
"""Looping year from 1990 to 2025"""
years = {}
for yr in range(1990, 2025):
years[str(yr) + '-' + str(yr+1)] = [str(yr) + '-' + str(yr+1)]
return years
tahun = QuerySelectField(
_('Year'),
query_factory = get_list_tahun,
allow_blank=True,
blank_text=_('-- choose year --')
)
start = DateTimeField(_('Start Periode'))
end = DateTimeField(_('End Periode'))
我希望高级可以提供帮助,我的代码有什么问题以及如何将数据填充到QuerySelectField。
谢谢。
解决方案
我在这个链接中找到了答案
这是我使用的代码:
# function
def get_list_tahun_audit():
"""Looping year from 1990 to 2025"""
return [(str(yr), str(yr) + '-' + str(yr + 1)) for yr in range(2000, 2025)]
class TahunAuditForm(Form):
def get_list_tahun():
list_tahun = get_list_tahun_audit()
return list_tahun[::-1]
tahun = SelectField('Tahun', choices=get_list_tahun())
start = DateTimeField(_('Start Periode'))
end = DateTimeField(_('End Periode'))
我希望这可以帮助某人,快乐的编码......
推荐阅读
- node.js - mongodb 和 nodejs 的问题
- amcharts - 是否可以动态地从数据中获取分组数据范围,而不是在 amcharts 分组柱形图中进行硬编码
- flutter - flutter_tts 错误:无效参数:“SpeechSynthesisEvent”的实例
- sql - 计算分组减去 SQL 中的重叠所花费的总时间
- swagger - 如何在 swagger doc 中设置参数的字段类型?
- cypress - 为什么我的 finally() 块不起作用,即如果测试用例失败 finally 块也不会在 cypress 中执行
- html - 如何在Angular中更正以下表达式
- flutter - 如果尚未安装,是否有任何方法可以使用 QR 码安装应用程序,如果已安装重定向到应用程序中的特定屏幕?
- java - Libgdx 演员没有出现
- python - 如何在 VSCode 中将虚拟环境设置为默认解释器