标签: flask-migrate

flask migrate似乎删除了我的所有数据库数据

这是我的迁移文件:

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_script import Manager
from flask_migrate import Migrate, MigrateCommand
import models

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///' + 'C:\\flaskDB\\commBorn3.db'

db = SQLAlchemy(app)
migrate = Migrate(app, db)

manager = Manager(app)
manager.add_command('db', MigrateCommand)



if __name__ == '__main__':
    manager.run()
Run Code Online (Sandbox Code Playgroud)

我运行了标准命令:

python app.py db init

python app.py db migrate

python app.py db upgrade
Run Code Online (Sandbox Code Playgroud)

生成的数据库是一个同名文件,大小与kb大小相同,但只有一个表"alembic_version",其中没有任何内容.我试图降级并发现我的所有表都已退回,但它们都是空的.我做错了什么?所有数据隐藏在哪里(文件大小相同)?

python flask flask-migrate

2
推荐指数
1
解决办法
1623
查看次数

使用Flask-Migrate在多个分支上工作

我正在使用Flask-Migrate(Alembic)管理SQLAlchemy数据库迁移。我正在两个具有不同迁移的不同分支。

  1. 如果切换分支,则会收到未迁移的错误消息。
  2. 如果我将此分支合并到父分支,则需要在两个分支上降级迁移并创建新分支。如果不这样做,我会得到迁移的冲突错误。

我怎样才能更轻松?也许其他工具更像Django的迁移工具,但适用于Flask吗?

python git sqlalchemy alembic flask-migrate

2
推荐指数
1
解决办法
282
查看次数

有没有办法使用flask-migrate/alembic列出已应用于数据库的迁移?

我想列出所有迁移和数据库状态(是否已应用迁移)。

我正在寻找与 Rails 相当的东西rake db:migrate:status

示例输出rake db:migrate:status

database: dev

 Status   Migration ID    Migration Name
--------------------------------------------------
   up     20180108162849  Add user table
   up     20180110135954  Add article table
  down    20180130152036  Add index to user
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy flask alembic flask-migrate

1
推荐指数
1
解决办法
1538
查看次数

从Flask-Migrate管理器运行应用程序

我使用这些行来启动我的应用程序:

from app import app
app.run(host='0.0.0.0', port=8080, debug=True)
Run Code Online (Sandbox Code Playgroud)

使用Flask-Migrate,我改为:

from app import manager
manager.run()
Run Code Online (Sandbox Code Playgroud)

manager.run不会采用相同的参数app.run,如何定义主机和端口?

python flask flask-migrate flask-script

0
推荐指数
1
解决办法
2060
查看次数

Flask-migrate 找不到自定义模块

我对我的 SQLAlchemy 模型做了一些更改,我想将它们迁移到我的数据库。当我尝试迁移时,出现以下错误:

\n\n
$ flask db migrate\nUsage: flask db migrate [OPTIONS]\n\nError: While importing "minerva.dashboard.app", an ImportError was raised:\n\nTraceback (most recent call last):\n  File "/home/mattfred/Minerva/envs/dashboard/lib/python3.7/site-packages/flask/cli.py", line 235, in locate_app\n    __import__(module_name)\n  File "/home/mattfred/Minerva/minerva/dashboard/app.py", line 13, in <module>\n    from templates.nav_layout import *\nModuleNotFoundError: No module named \'templates\'\n
Run Code Online (Sandbox Code Playgroud)\n\n

我不知道自从我第一次初始化数据库以来发生了什么变化,除了将视图移动到单独的文件而不是 1 中。

\n\n

我实际上可以通过将导入语句更改为来解决此问题

\n\n
from .templates.nav_layout import *\n
Run Code Online (Sandbox Code Playgroud)\n\n

但当我尝试运行该应用程序时出现此错误:

\n\n
Traceback (most recent call last):\n  File "app.py", line 13, in <module>\n    from .templates.nav_layout import *\nModuleNotFoundError: No module named \'__main__.templates\'; \'__main__\' is not …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy flask flask-sqlalchemy flask-migrate

0
推荐指数
1
解决办法
1468
查看次数