Python 如何应用django初始迁移?
Python 如何应用django初始迁移?,python,django,Python,Django,showmigrations显示有31个可用迁移: # python3 manage.py showmigrations admin [X] 0001_initial [X] 0002_auto_20190114_1409 [X] 0003_auto_20190114_1410 auth [X] 0001_initial [X] 0002_alter_permission_name_max_length [X] 0003_alter_user_email_max_length [X
showmigrations
显示有31个可用迁移:
# python3 manage.py showmigrations
admin
[X] 0001_initial
[X] 0002_auto_20190114_1409
[X] 0003_auto_20190114_1410
auth
[X] 0001_initial
[X] 0002_alter_permission_name_max_length
[X] 0003_alter_user_email_max_length
[X] 0004_alter_user_username_opts
[X] 0005_alter_user_last_login_null
[X] 0006_require_contenttypes_0002
[X] 0007_auto_20190114_1409
authtoken
[X] 0001_initial
[X] 0002_auto_20160226_1747
[X] 0003_auto_20190114_1409
contenttypes
[X] 0001_initial
[X] 0002_remove_content_type_name
[X] 0003_auto_20190114_1409
exchange_delivery
[X] 0001_initial
[X] 0002_enlarge_phone_field
[X] 0003_unique_external_id
[X] 0004_add_warehouse
[X] 0005_add_delivery_point_type
[X] 0006_update_delivery_type_operating_mode
[X] 0007_add_delivery_point_region_model
[X] 0008_update_warehouse_exchange
[X] 0009_add_verbose_name_for_warehouse_and_add_delivery_point_banned_group
[X] 0010_add_active_flag_to_warehouse
[X] 0011_auto_20190114_1409
sessions
[X] 0001_initial
[X] 0002_auto_20190114_1410
volt
[X] 0001_initial
[X] 0002_auto_20190114_1410
如何应用所有这些迁移<代码>迁移显示没有要应用的迁移
# python3 manage.py migrate
Operations to perform:
Synchronize unmigrated apps: corsheaders, export, opinion, volt.integration1c.delivery, custom_logger, event_listener, legacy, region, order, catalog, promo_table, messages, staticfiles, api, best_product, shop, general, market_cpa, rest_framework, delivery, exchange, talk
Apply all migrations: auth, authtoken, sessions, exchange_delivery, admin, volt, contenttypes
Synchronizing apps without migrations:
Creating tables...
Running deferred SQL...
Installing custom SQL...
/usr/lib/python3.6/site-packages/django/core/management/commands/loaddata.py:239: RemovedInDjango19Warning: initial_data fixtures are deprecated. Use data migrations instead.
RemovedInDjango19Warning
Installed 0 object(s) (of 6) from 1 fixture(s)
Running migrations:
No migrations to apply.
我不熟悉Django,我只需要对现有的应用程序进行dockerize
据我所知,从python3 manage.py syncdb
命令的输出
django.db.utils.ProgrammingError: (1146, "Table '220-django.auth_user' doesn't exist")
问题是没有应用django和django admin的初始迁移
项目位于Django 1.8.14下,正如我所看到的,所有迁移的名称旁边都有[X]。表示已应用这些迁移。如果存在任何未应用的迁移,则它将在迁移名称旁边显示为[]。有关更多详细信息(如果已应用迁移或未应用迁移),请查看数据库中的
django_迁移
表。如我所见,所有迁移的名称旁边都有[X]。表示已应用这些迁移。如果存在任何未应用的迁移,则它将在迁移名称旁边显示为[]。有关更多详细信息(如果已应用或未应用迁移),请检查数据库中的django_迁移
表。您的数据库中django_迁移
表中有一些条目,因此migrate显示没有要应用的迁移
。
要解决此问题,请转到数据库控制台并运行以下命令
delete from django_migrations;
或,直接转到数据库表并删除所有行
然后跑
python manage.py migrate
数据库中的
django_migrations
表中有一些条目,因此migrate显示没有要应用的迁移
。
要解决此问题,请转到数据库控制台并运行以下命令
delete from django_migrations;
或,直接转到数据库表并删除所有行
然后跑
python manage.py migrate
[X]是否可能是虚假迁移的结果,并且实际上没有应用迁移?我将
python3 manage.py syncdb
的奇怪输出添加到了问题yes,如果您假装应用迁移,它将显示[X]
,因为在django_migrations
表中有一个条目。我不知道您为什么要使用syncdb
。它的去污和复制python manage.py migrate
。我想你可以看看这个关于dockerizing django的回购协议:谢谢你链接到回购协议!我在生产中检查了数据库220 django,它有以下表格,您能告诉我,它是标准django表格吗?是的。它们是带有默认应用程序的django项目的标准表。是否可能[X]是虚假迁移的结果,并且实际上没有应用迁移?我将python3 manage.py syncdb
的奇怪输出添加到了问题yes,如果您假装应用迁移,它将显示[X]
,因为在django_migrations
表中有一个条目。我不知道您为什么要使用syncdb
。它的去污和复制python manage.py migrate
。我想你可以看看这个关于dockerizing django的回购协议:谢谢你链接到回购协议!我在生产中检查了数据库220 django,它有以下表格,您能告诉我,它是标准django表格吗?是的。它们是带有默认应用程序的django项目的标准表。请尝试对基础应用程序使用python3 manage.py migrate app_name
。用基本应用程序替换应用程序名称。请尝试@Sam,如何定义基本应用程序?我在general/settings.py的INSTALLED\u apps
中安装了5个顶级应用程序。请尝试为基础应用程序使用python3 manage.py migrate app\u name
。用基本应用程序替换应用程序名称。请尝试@Sam,如何定义基本应用程序?我在中安装了5个顶级应用程序位于常规/settings.py