gpt4 book ai didi

python - 在运行记录器之前对表进行查询。迁移(django_migrations)?

转载 作者:行者123 更新时间:2023-11-29 18:08:00 25 4
gpt4 key购买 nike

我需要在表django_migrations中写入我正在使用的内容:

fix_migration.py

from django.db import connection
from django.db.migrations import recorder
recorder.MigrationRecorder(connection).record_applied("registro_movimientos", "0001_initial")

我通过python manage.py runscript fix_migration.py

应用它

但我需要首先检查之前是否应用过迁移,例如:

query = django_migrations.filter(name=0001_initial, app="registro_movimientos")

if not query:
recorder.M ....

谢谢。

最佳答案

我找到一个解决方案

first:执行搜索依赖迁移的sql

之后:执行sql来验证当前迁移是否已应用

from django.db import connection
from django.db.migrations import recorder

cursor = connection.cursor()
depends = cursor.execute(
'SELECT name FROM django_migrations WHERE name = "0001_initial" AND app = "registro_movimientos"')

re = cursor.execute('SELECT name FROM django_migrations WHERE name = "0002_auto_20171205_1645" AND app = "registro_movimientos"')


if depends and not re:
print("applying migration 0002_auto_20171205_1645 ... ")
recorder.MigrationRecorder(connection).record_applied("registro_movimientos", "0002_auto_20171205_1645")

有效。

关于python - 在运行记录器之前对表进行查询。迁移(django_migrations)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47661764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com