Python 由芹菜创建的表格
我有一个连接到PostgreSQL数据库的flask应用程序。我集成了芹菜,并将其结果后端配置为相同的postgresql数据库 flask应用程序中使用的其他表在代码中有类定义,并使用alembic(flask migrate)生成: 问题 我在代码中为一个表添加了一个新类,并运行了Python 由芹菜创建的表格,python,flask,celery,flask-sqlalchemy,flask-migrate,Python,Flask,Celery,Flask Sqlalchemy,Flask Migrate,我有一个连接到PostgreSQL数据库的flask应用程序。我集成了芹菜,并将其结果后端配置为相同的postgresql数据库 flask应用程序中使用的其他表在代码中有类定义,并使用alembic(flask migrate)生成: 问题 我在代码中为一个表添加了一个新类,并运行了flaskdb-migrate-m“addtesttable” 该命令将生成一个迁移文件,下面是有问题的代码段: def upgrade(): op.create_table('TestTable',
flaskdb-migrate-m“addtesttable”
该命令将生成一个迁移文件,下面是有问题的代码段:
def upgrade():
op.create_table('TestTable',
sa.Column('id', sa.Integer(), nullable=False),
sa.PrimaryKeyConstraint('id')
)
# DROP HERE
op.drop_table('taskset')
op.drop_table('task')
因为芹菜的任务和任务集表的类定义不在我的代码中,Alembic试图删除它们
我已经研究过是否可以覆盖芹菜创建的任务和任务集表,以便我可以通过迁移手动创建这些表,但找不到任何文档。我已经查看了数据库\u表\u名称
和数据库\u表\u架构
配置属性,但它们似乎无法解决问题
问题:
from celery.backends.database.models import Task
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
class CustomTask(db.Model, Task):
pass
您可以使用Alembic的
include_object
选项,使芹菜桌不受影响。您仍将使用芹菜创建表格
- 文件:
- 实例:
from celery.backends.database.models import Task
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
class CustomTask(db.Model, Task):
pass