使用SQLAlchemy-Migrate创建具有外键约束的表时出错
发布时间:2020-12-20 11:17:10 所属栏目:Python 来源:网络整理
导读:我在 python中构建一个应用程序.我正在使用 sqlalchemy-migrate来跟踪我的数据库架构.我有一个表user_category,它有两列:id和name.我正在尝试使用user_category表的外键创建一个用户表.我创建用户表的更改脚本如下: from sqlalchemy import *from migrate
我在
python中构建一个应用程序.我正在使用
sqlalchemy-migrate来跟踪我的数据库架构.我有一个表user_category,它有两列:id和name.我正在尝试使用user_category表的外键创建一个用户表.我创建用户表的更改脚本如下:
from sqlalchemy import * from migrate import * from migrate.changeset import * meta = MetaData() user_category = Table('user_category',meta) user = Table('user',meta,Column('id',Integer,primary_key=True),Column('email',String(255)),Column('first_name',String(40)),Column('surname',Column('password',Column('user_category',ForeignKey("user_category.id")),) def upgrade(migrate_engine): # Upgrade operations go here. Don't create your own engine; bind migrate_engine # to your metadata meta.bind = migrate_engine user.create() def downgrade(migrate_engine): # Operations to reverse the above upgrade go here. meta.bind = migrate_engine user.drop() 当我运行’manage.py test’时,我得到并且错误: sqlalchemy.exc.NoReferencedColumnError: Could not create ForeignKey 'user_catego ry.id' on table 'user': table 'user_category' has no column named 'id' 解决方法
您声称您的“user_category”表具有名称和ID. “user_category”的定义根本不包含任何列:)
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |