Tout d'abord, j'ai créer ma base de données.
create database mydb;
- Je ajouter "sud" pour les Applications installées. Ensuite, je vais de ce tutoriel: http://south.aeracode.org/docs/tutorial/part1.html
Le tutoriel me dit de faire ceci:
$ py manage.py schemamigration wall --initial
>>> Created 0001_initial.py. You can now apply this migration with: ./manage.py migrate wall
Super, maintenant je migrer.
$ py manage.py migrate wall
Mais il me donne cette erreur...
django.db.utils.DatabaseError: (1146, "Table 'fable.south_migrationhistory' doesn't exist")
Donc j'utilise Google (qui ne fonctionne jamais. d'où mon 870 questions posées sur Stackoverflow), et j'obtiens cette page: http://groups.google.com/group/south-users/browse_thread/thread/d4c83f821dd2ca1c
Bon, j'suivre que les instructions
>> Drop database mydb;
>> Create database mydb;
$ rm -rf ./wall/migrations
$ py manage.py syncdb
Mais quand je lance syncdb, Django crée un groupe de tables. Oui, il crée le south_migrationhistory table, mais il crée aussi mon application tables.
Synced:
> django.contrib.admin
> django.contrib.auth
> django.contrib.contenttypes
> django.contrib.sessions
> django.contrib.sites
> django.contrib.messages
> south
> fable.notification
> pagination
> timezones
> fable.wall
> mediasync
> staticfiles
> debug_toolbar
Not synced (use migrations):
-
(use ./manage.py migrate to migrate these)
Cool....maintenant, il me dit de migrer ces. Donc, je fais ceci:
$ py manage.py migrate wall
The app 'wall' does not appear to use migrations.
Bon, très bien. Je vais ajouter un mur à la formation initiale des migrations.
$ py manage.py schemamigration wall --initial
Puis-je migrer:
$ py manage.py migrate wall
Vous savez quoi? Il me donne cette BS:
_mysql_exceptions.OperationalError: (1050, "Table 'wall_content' already exists")
Désolé, c'est vraiment de la pisse. Quelqu'un peut-il aider ? merci.
Comment puis-je obtenir du Sud de travailler et de se synchroniser correctement avec tout? La seule chose que je peux penser à est de supprimer mon application de INSTALLED_APPS, puis exécutez syncdb, puis ajouter sur le dos.
C'est TELLEMENT RIDICULE.