【发布时间】:2014-03-10 01:27:45
【问题描述】:
我有一个 Python/Django 服务器成功部署到 AWS Elastic Beanstalk。然而,在成功部署后,我创建了一些新的南方迁移。当我重新部署到弹性 beantalk 时,一切都会向上推进,但南方迁移不适用,并且我在新字段上遇到数据库错误。
我尝试通过 git aws.push 和 eb update 重新部署到服务器。但是这两个命令似乎都没有更新 RDS。我重新部署时没有错误,所以我很困惑。
.config 文件:
container_commands:
01_syncdb:
command: "django-admin.py syncdb --noinput"
leader_only: true
02_createadmin:
command: "scripts/createadmin.py"
leader_only: true
03_collectstatic:
command: "django-admin.py collectstatic --noinput"
04_migrate_expedition_granted:
command: "python manage.py migrate users --noinput"
leader_only: true
【问题讨论】:
-
您是否在两者上使用相同的数据库?在我的开发环境和生产环境中的 Postgres 9.3 和生产环境中的 Postgres 9.1 中,我遇到了类似的问题,导致我在进行南迁移时丢失了一些信息。
-
是的。在我的本地机器和 AWS RDS 上运行 Mysql 5.5。
-
我认为 syncdb 甚至没有运行,因为我收到此错误...“表 'ebdb.django_site' 不存在”
-
在运行 South “migrate” 之前是否先运行了 syncdb?不过我不确定。我的问题是由于不同的数据库版本导致了意外问题。
-
经过数小时试图找出问题所在,结果证明 .config 位于 gitignore 中,而没有部署到服务器.....叹息。感谢您的帮助。
标签: python django amazon-web-services django-south amazon-rds