我已经在我的本地环境中设置了所有内容,并且在Heroku服务器上设置了我的网站代码,我只是在将模式迁移到Heroku服务器上的PostgreSQL数据库时遇到了麻烦。每当我尝试update dc
set prdintegritycheckbox = '0'
from [dbo].[DailyChecks] dc
where dc.server in (Select [resid] from [dbo].[dailyChecksIntegrityErrorState2]) and
dc.server = '1077'
时,我都会得到以下内容(这将是初始迁移):
heroku run python manage.py migrate
这似乎很好,但后来使用 Running python manage.py migrate on baseballstatview... up, run.1653 (Free)
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions, statview
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying sessions.0001_initial... OK
Applying statview.0001_initial... OK
它告诉我我有0个表,甚至当我运行heroku pg:info
时,这就是我得到的:
heroku run python manage.py showmigrations
所以似乎迁移没有通过,我想知道为什么会这样。数据库是空的,我已经尝试重置它并再次尝试但似乎没有任何效果。
编辑:以下是dj_database_url的相关 Running python manage.py showmigrations on baseballstatview... up, run.5059 (Free)
admin
[ ] 0001_initial
[ ] 0002_logentry_remove_auto_add
auth
[ ] 0001_initial
[ ] 0002_alter_permission_name_max_length
[ ] 0003_alter_user_email_max_length
[ ] 0004_alter_user_username_opts
[ ] 0005_alter_user_last_login_null
[ ] 0006_require_contenttypes_0002
[ ] 0007_alter_validators_add_error_messages
[ ] 0008_alter_user_username_max_length
contenttypes
[ ] 0001_initial
[ ] 0002_remove_content_type_name
sessions
[ ] 0001_initial
statview
[ ] 0001_initial
:
settings.py
答案 0 :(得分:0)
在您尝试引入本地设置之前,从代码片段中可以看到您正在加载dj_database_url配置。这就是问题。这里发生的是您的本地设置覆盖了生产设置(使用Postgres)。
运行迁移时发生的事情是:
如果您将本地设置移到db_database_url调用之上,那么事情应该开始神奇地为你工作了!