2017-09-13 7 views
0

Je travaille sur une application qui utilise deux tables provenant de différentes bases de données.J'ai réussi à établir la connexion et à faire des structures de tables dans models.py, mais maintenant je change le models.py fichier, je copie l'une des tables dans un autre script python, et je place le fichier ailleurs pour que d'autres personnes puissent l'utiliser. Ma question est qu'il est possible dans Django d'importer un modèle depuis l'extérieur du projet? ou le paquet?Importer des modèles Django depuis l'extérieur du projet

L'application est appelée banner_manager et views.py Je veux importer un modèle appelé utilisateur à partir d'un autre projet appelé django_models lorsque je tente d'importer comme ceci: de .... models.py import models_django (dans les modèles py c'est la classe « utilisateur » définie) il est dit: ValueError: import par rapport tentative au-delà de package haut niveau

+0

Son possible, c'est juste un cas de mise en place des variables environnementales correctes. Comme vous n'avez pas donné beaucoup d'idée du projet et de la structure externe, il est difficile de conseiller quoi ajouter. –

Répondre

0

Vous pouvez ajouter ce répertoire à PYTHONPATH par exemple:

export PYTHONPATH=$PYTHONPATH:/var/python/your-libs 

Et puis juste paquet d'importation comme normal:

import models_django 
+0

Mais maintenant, quand j'essaie d'importer depuis les dossiers lib: from table_class_corespondance import Les utilisateurs me donnent cette erreur RuntimeError: Classe de modèle table_class_corespondance.Users ne déclare pas d'app_label explicite et n'est pas dans une application dans INSTALLED_APPS. – Unknown

+0

Vous devez ajouter votre application à INSTALLED_APPS. https://stackoverflow.com/a/34406473/5996922 – Mentos