首先,我创建了我的数据库.
create database mydb;
Run Code Online (Sandbox Code Playgroud)
我在安装的应用程序中添加"南".然后,我转到本教程:http: //south.aeracode.org/docs/tutorial/part1.html
教程告诉我这样做:
$ py manage.py schemamigration wall --initial
>>> Created 0001_initial.py. You can now apply this migration with: ./manage.py migrate wall
Run Code Online (Sandbox Code Playgroud)
好的,现在我迁移了.
$ py manage.py migrate wall
Run Code Online (Sandbox Code Playgroud)
但它给了我这个错误......
django.db.utils.DatabaseError: (1146, "Table 'fable.south_migrationhistory' doesn't exist")
Run Code Online (Sandbox Code Playgroud)
所以我使用谷歌(这永远不会奏效,因此问#2我的870度的问题.),我得到这个页面:http://groups.google.com/group/south-users/browse_thread/thread/d4c83f821dd2ca1c
好的,所以我按照说明进行操作
>> Drop database mydb;
>> Create database mydb;
$ rm -rf ./wall/migrations
$ py manage.py syncdb
Run Code Online (Sandbox Code Playgroud)
但是当我运行syncdb时,Django会创建一堆表.是的,它创建了south_migrationhistory表,但它也创建了我的应用程序表.
Synced:
> django.contrib.admin
> django.contrib.auth
> django.contrib.contenttypes
> django.contrib.sessions
> django.contrib.sites
> django.contrib.messages
> south
> fable.notification
> …Run Code Online (Sandbox Code Playgroud) 我似乎无法让这个工作.
我需要South为一堆应用程序进行迁移.
通过转到python解释器并执行(没有错误),仔细检查以查看它是否应该在哪里
进口南
我做
Run Code Online (Sandbox Code Playgroud)C:\Users\j\iMiCode\imi_admin>python ./manage.py syncdb同步...找不到固定装置.
Run Code Online (Sandbox Code Playgroud)Synced: > django.contrib.auth > django.contrib.contenttypes > django.contrib.sessions > django.contrib.sites > django.contrib.messages > django.contrib.admin Not synced (use migrations): - south (use ./manage.py migrate to migrate these)
- 根据我的理解,南方本应该同步正确吗?在此之后我做的任何事情都抱怨我在数据库中没有south_migrationhistory表.
PS.我在Windows7上使用Django 1.2.7,python 2.6