问题标签 [flask-migrate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1444 浏览

python - 如何将 Flask-Migrate 与 Google App Engine 一起使用?

自从我搬到 Google App Engine 后,我无法运行 Flask-Migrate 命令python manage.py db migrate,因为我对一些与 GAE 相关的导入有异常(No module named google.appengine.ext例如)。

有没有办法运行这个或替代方法来升级我在 GAE 上的数据库?

0 投票
0 回答
965 浏览

flask-migrate - Flask-migrate 在第一次迁移时删除表

我正在尝试为应用程序设置 Flask-migrate,但第一个迁移文件始终包含用于删除所有表而不是构建它们的 SQL。

这是我的应用程序结构:

我通过进入 shell 并运行 db.create_all() 来创建我的数据库。然后我运行 python manage.py db init,然后运行 ​​python manage.py db migrate。但结果是一个迁移文件,其中包括:

如何修复我的代码,以便它检测到不需要更改,或者它需要构建所有表和字段?

0 投票
2 回答
18737 浏览

flask - sqlalchemy postgresql 枚举不会在 db migrate 上创建类型

我在 Python3 下使用 Flask 开发了一个网络应用程序。我在 db migrate/upgrade 上遇到了 postgresql 枚举类型的问题。

我在模型中添加了一个“状态”列:

生成的迁移python manage.py db migrate是:

当我这样做时,python manage.py db upgrade我得到一个错误:

为什么迁移不创建类型“banner_status”?

我究竟做错了什么?

0 投票
2 回答
2150 浏览

python - Flask Sql-alchemy 不删除由 alembic 创建的表

我有 Flask-migrate 的烧瓶应用程序。运行db upgrade创建下表:

但是当我删除所有表时:

我懂了:

是否有删除所有表(甚至alembic_version)的解决方案?

0 投票
2 回答
1883 浏览

flask - 如何为alembic迁移的每一行设置唯一值

uid我为模型添加了一个独特的属性MyModel

我有一个迁移:

运行时db upgrade出现错误:

如何为 op.execute(mymodel.update().values(uid=generate_uid())) 上的每一行设置唯一值?

0 投票
1 回答
37 浏览

python - 如何使用 Flask Migrate 创建 SIMILAR TO 约束?

我想使用烧瓶迁移来建立对状态的约束。状态尚不存在。

我的模型包括这一行:

除了创建状态之外,我还想在状态上添加以下约束:

0 投票
1 回答
538 浏览

flask - flask 迁移如何跟踪哪个修订 ID 是当前的?

我一直在错误地使用 Flask-Migrate。在两个环境之间,我独立创建了迁移文件夹,并将迁移文件夹添加到 .gitignore 文件中。

这最近引起了问题,因为我想直接与 Alembic 迁移进行交互,并在 github 中跟踪这些更改。

这意味着我已经分叉了我的生产烧瓶应用程序,现在跟踪迁移文件夹,从我的 .gitignore 文件中删除了它的条目。我把这个分支拉到我的本地并破坏了我的本地数据库。我运行了跟踪的迁移,它似乎工作。

我想知道在两个环境之间,flask 迁移如何跟踪当前的修订 ID 是什么?假设我在本地创建并运行两个迁移,然后推送迁移文件夹。当我在生产中运行 db upgrade 时,Flask 迁移将如何跟踪这两个修订版,并在生产上运行它们?

0 投票
2 回答
682 浏览

python - 如何基于flask megatutorial在pythonanyhwere上设置Flask

我目前正在开发一个应用程序。这个网络应用程序有自己的域。最初创建时,我使用 cname 设置域和注册商,并在几个小时后成功显示“这是一个烧瓶应用程序......”类似的东西。

我决定按照 Grinberg 先生在他的书中的例子(在 localhost 上功能齐全)。所以我将我的个人存储库克隆到 pythonanywhere 并运行以下命令。

到目前为止,一切都很好。我使用mysql workbench检查了 mysql 数据库。

现在是我的问题。

当我跑步时python manage.py runserver

它向我抛出以下错误。

我尝试禁用 wsgi.py 文件(将所有内容注释掉)仍然相同。

要知道的事情:

  1. 我有一个付费帐户。
  2. 这是 pythonanywhere 上的第二个 webapp。(第一个不是根据教程建模的,效果很好)

编辑

我将端口从 5000 更改为 9000。它在控制台中运行。但我不能访问我的网站。我应该注释掉 wsgi 文件吗?

目前它看起来像这样:

管理.py

编辑 2

上面的 wsgi 配置出现以下错误。

错误日志

0 投票
1 回答
1433 浏览

python - Why Flask Migrate doesn't create an empty migration file?

I am using Flask, Flask-SqlAlchemy and Flask-Migrate to manage my models. And I just realize that in my latest database state, when I create a new migration file, python manage.py db migrate -m'test migration, it will not create an empty migration file. Instead it tries to create and drop several unique key and foreign key constraints.

Any ideas why it behaves like this?

0 投票
3 回答
6328 浏览

python - 在 Flask-migrate ValueError 中:位置 15 的连接字符串中的插值语法无效

我正在使用flask migratesqlalchemy 在烧瓶中创建数据库和迁移数据库。

一切正常,直到我更改我的数据库用户密码包含'@'然后它停止工作,所以我更新了我的代码,基于在 密码包含特殊字符时编写连接字符串

它适用于应用程序但不适用于烧瓶迁移,迁移时显示错误

即开python manage.py db migrate

这里密码是p@ssword和它的转义urlquote(见上面的问题链接)。

完整的错误堆栈:

请帮忙