问答 / 0 / 1 / 创建于 2年前
报错 1146 是因为你创建的表名(数据库的表名)不是复数形式,所以使用模型找不到表名。复数形式就是:英语:复数形式分为哪几种?
表名
把user 表的名称直接改成users。
user
users
不改名的情况下,得在 app/models/User.py 的User模型里面加上这句话:__table__ = "users"
app/models/User.py
User
__table__ = "users"
但是在实践过程中:user表名是单数,然后添加了这个__table__ = "users" 还是会报 1146 的错误。这好像是个BUG。
BUG
所以最终结果如下:user表名是单数,__table__ = "user" 这里也强制写成单数。
__table__ = "user"
我要举报该,理由是:
报错 1146 是因为你创建的
表名
(数据库的表名)不是复数形式,所以使用模型找不到表名。复数形式就是:
英语:复数形式分为哪几种?
解决办法
第一种:
把
user
表的名称直接改成users
。第二种:
不改名的情况下,得在
app/models/User.py
的User
模型里面加上这句话:__table__ = "users"
但是在实践过程中:
user
表名是单数,然后添加了这个__table__ = "users"
还是会报 1146 的错误。这好像是个BUG
。所以最终结果如下:

user
表名是单数,__table__ = "user"
这里也强制写成单数。