python - Flask SQLAlchemy:属性错误:“函数”对象没有属性“翻译”
问题描述
我正在尝试使用 Flask Restful 将一些值插入到我的数据库中。我正在使用 PyMysql 和 Flask SQlAlchemy 进行数据库连接,但是当我插入时,我得到了
AttributeError: 'function' object has no attribute 'translate'
当我做
db.session.add(self)
db.session.commit()
错误
File "/home/yung/Documents/Projects/Crowlabs/Projects/churchify/venv/lib/python2.7/site-packages/pymysql/converters.py", line 73, in _escape_unicode
def _escape_unicode(value, mapping=None):
"""escapes *value* without adding quote.
Value should be unicode
"""
return value.translate(_escape_table)
if PY2:
def escape_string(value, mapping=None):
"""escape_string escapes *value* but not surround it with quotes.
我的代码
from db import db
class Test(db.Model):
__tablename__ = "auth_test"
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.Text)
password = db.Column(db.Text)
email = db.Column(db.Text)
type = db.Column(db.Text)
def __init__(self, username, password, email, type_):
self.username = username
self.password = password
self.email = email
self.type = type_
db.session.add(self)
db.session.commit()
这仅在我尝试插入数据库时出现,但在检索时效果很好
解决方案
所以我终于明白了。当我使用整数时,Pymysql 期望我的一个值有一个字符串值,所以我所做的就是使用将这些值转换为字符串
str()
它奏效了
推荐阅读
- docker - Flutter web:在更改 web 版本和禁用 nginx 缓存策略后保持缓存
- nlp - huggingface 的 ReformerForMaskedLM 配置问题
- java - 如何反序列化具有连字符或破折号的 Json 对象 - 在其属性名称中 .. 使用 GSON
- .htaccess - 需要通过 htaccess 将 maind 域重定向到 index.htm 但 DirectoryIndex 没有按预期工作?
- angular - 角管道到LocaleUpperCase
- c# - 将 Binance 时间戳转换为有效的日期时间
- r - 如何从 R 中的目录中输入和输出文件?
- apache-kafka - 当 Broadway Producer 消息处理时间过长时,Kafka 重新平衡永远不会完成或失败
- qml - 所有自定义 QML 组件都应该将“Item”作为其根元素吗?
- node.js - 使用 Puppeteer 从文件资源管理器上传文件