2010-04-19 7 views
2

J'ai un projet Django sur ma machine et quand j'essaie d'utiliser South pour migrer le schéma de données, j'ai plusieurs erreurs bizarres. Exemple:Problèmes avec South/Django: ne pas reconnaître l'application Django

$ python manage.py convert_to_south thisLocator

/Library/Python/2.6/site-packages/registration/models.py:4: DeprecationWarning: le sha> module est dépréciée; utilisez le module hashlib à la place import sha /Users/cm/code/thisLocator/../thisLocator/batches/models.py:6: DeprecationWarning: le module md5> est obsolète; utiliser hashlib à la place importer md5

Il n'y a aucune application activée correspondant à 'thisLocator'.

J'ai suivi la documentation de South. Settings.py l'a dans les applications installées, je peux lancer l'importation au sud depuis le shell manage.py. Tous les autres membres de mon équipe appellent l'application thisLocator. Est-ce que je fais quelque chose de vraiment stupide?

+0

Pour tous ceux qui connaissent d'autre cette erreur, assurez-vous de vérifier que votre application est en INSTALLED_APPS dans settings.py! – UTAlan

Répondre

3

Est-ce que je fais quelque chose de vraiment stupide?

Eh bien, commençons par le « est-il branché » questions:

  • est votre répertoire de projet dans votre chemin Python?
  • Exécutez-vous python manage.py et non, disons, python some/path/i/am/omitting/manage.py? (C'est un bon moyen pour pas avoir le projet dans le chemin Python.)
  • Quelle est la sortie de ./manage.py syncdb? (Je l'utilise ./manage.py au lieu de python manage.py juste au cas où ils se réfèrent à différents pythons.)
+0

Mike, merci pour la réponse. J'ai fini par le clouer. L'application est organisée d'une manière quelque peu non conventionnelle avec plusieurs sous-répertoires. J'ai été capable de trouver les différents models.py dans divers fichiers et de concocter la migration. – christmasgorilla

+0

Eh bien, vous avez résolu * mon * problème! J'ai été dans le mauvais répertoire>. < – mpen

+0

J'ai pris pour mettre 'sys.path.append (os.path.dirname (__ fichier __))' dans mon 'manage.py' (et mon' django.wsgi' et tout autre qui gère le projet). De cette façon, je peux l'exécuter de partout. –

Questions connexes