【发布时间】:2014-07-10 00:23:01
【问题描述】:
我是 Django 和 South 的新手和新用户。我在模型包中创建了一个新模型 (approval.py)(并将其链接到模型的 init.py 中),并且能够成功迁移我的应用程序以接受新模型。但是,当我尝试在管理站点上查找该模型时,由于未应用 Guardian 权限,我收到了 403 禁止错误。 于是我直接从 sqlite 命令提示符中删除了表,并尝试再次执行以下命令:
$python manage.py syncdb
...
(use ./manage.py migrate to migrate these)
$python manage.py schemamigration myapp --auto
Nothing seems to have changed.
$python manage.py migrate myapp
Running migrations for myapp:
- Nothing to migrate.
- Loading initial data for myapp.
Installed 0 object(s) from 0 fixture(s)
但是,当我签入 sqlite 命令提示符时,不再创建表。另外,我已经在我的 admin.sites.url 上注册了这个模型,但它不再显示它并给出错误:
DatabaseError at /admin/myapp/approval/
no such table: myapp_approval
Request Method: GET
Request URL: http://localhost/admin/approval/
Django Version: 1.5.1
Exception Type: DatabaseError
Exception Value:
no such table: myapp_approval
Exception Location: /home/lib/python2.7/site-packages/django/db/backends/sqlite3/base.py in execute, line 362
Python Executable: /home/bin/python2.7
Python Version: 2.7.5
Python Path:
['.........']
Server time: Wed, 9 Jul 2014 19:12:00 -0500
我已经检查了 StackOverflow 上发布的有关使用 South 进行迁移的所有其他问题,特别是有关“似乎没有任何变化”的错误。但是,我无法通过任何这些解决方案解决我的问题。
我请求一些帮助:
- 从头开始重新创建审批模型并成功迁移
- 或修复现有审批模型。
谢谢。
【问题讨论】:
标签: python django django-models django-south