2009-10-27 6 views
1

J'essaie d'importer sorl-thumbnail dans mon application dans django. Maintenant que j'ai configuré le site, en utilisant mod_wsgi sur CentOS 5 avec cpanel, le chemin pour les applications doit avoir le nom du projet lors de l'importation ... ce qui est pénible.les chemins ne sont pas cohérents python django

Évidemment, cela est une source de préoccupation avec la portabilité de l'application. J'important sorl-thumbnail, dans les applications précédentes, je viens d'ajouter sorl.thumbnail aux applications installées et cela a fonctionné.

Cependant, maintenant, cela provoque des problèmes, sauf si j'ai le nom du projet www. en face du chemin d'importation. Cela n'a jamais été fait auparavant et je n'arrive pas à contourner le problème.

J'ai également ajouté www.sorl.thumbnail mais le reste des chemins dans les fichiers sorl comportent des erreurs. Des idées sur la façon de remédier à cela ou de réparer un travail?

Répondre

3

Vous ne devriez pas avoir besoin d'utiliser le nom du projet lors de l'importation - assurez-vous simplement que les applications sont quelque part sur votre chemin python. Quelque chose le long des lignes de:

sys.path.append('/etc/django/domains/mydomain.com/myproject/') 

... dans votre fichier .wsgi devrait le faire (avec le chemin de votre propre projet, bien sûr). Les applications idéalement réutilisables devraient être en dehors de votre répertoire de projet, alors pensez à créer un dossier tel que/etc/django/lib/pour contenir des applications réutilisables et les ajouter à sys.path dans votre gestionnaire wsgi. Ou, si vous n'aimez pas cela, utilisez peut-être virtualenv et ajoutez vos applications réutilisables directement aux packages de site.

Ou, si vous ne l'aimez pas, mettez vos applications réutilisables ailleurs et les liens symboliques vers packages site ou quelque part sur votre chemin de python.

En bref, assurez-vous que le package/le module que vous importez est sur votre chemin de python. Si vous ajoutez le nom du projet ou "www" à un certain nombre de chemins d'importation, vous faites probablement quelque chose de mal.

+0

très bien expliqué et vous ont donné de grandes options à suivre pour moi ... des informations très utiles aussi, donc merci beaucoup d'avoir pris le temps d'écrire cela. –

Questions connexes