python - SQLAlchemy 无法适应 TextField 的类型
问题描述
对于 Flask 应用程序,在我的模型中,我有以下字段:
additional_notes = db.Column(db.Text)
在我的表格中,我有以下内容:
additional_notes = TextField(u'Additional Notes')
当我尝试保存表单时,它会引发以下错误:
sqlalchemy.exc.ProgrammingError: (psycopg2.ProgrammingError) 无法适应类型'TextAreaField' [SQL: 'UPDATE part SET make=%(make)s, Identification_notes=%(identification_notes)s, additional_notes=%(additional_notes)s WHERE part.id = %(part_id)s'] [parameters: {'make': 'xToyotaasdf', 'identification_notes': , 'additional_notes': , 'part_id': 5}] (此错误的背景:http:// /sqlalche.me/e/f405 )
我需要在模型级别或表单级别进行某种设置以将表单字段连接到此模型字段吗?我究竟做错了什么?
解决方案
确保您从表单中获取数据,而不是表单对象本身。所以在你的路线中,你应该有类似的东西:
if form.validate_on_submit():
model = Model(additional_notes=form.additional_notes.data)
db.session.add(model)
推荐阅读
- javascript - 如何在不破坏它们的情况下删除“上一个”和“下一个”innerHTML
- angular - 具有角度的对象数组的拼接或推送问题
- python - 一旦你点击 `!python` 命令,Jupyter Notebook 将不再运行
- javascript - 如何在javascript中获取两个日期之间的日差?
- ios - iOS WebRTC RTCMediaStreamTrack 静音取消静音远程音轨
- c++ - 如何编写将字符串和整数读入两个单独的动态数组的程序?
- python - 每当调用 model.fit() 时,权重是否会重新初始化
- flutter - 错误颤振:[sliver_list]'estimatedMaxScrollOffset >= endScrollOffset - childScrollOffset(firstChild)':不是真的
- python - 为什么尝试在 django settings.py 中更改语言时会出现错误?
- python - Python中的日期时间减法是非对称的?