J'ai deux projets Django où j'utilise beaucoup de modèles courants. Classes d'utilisateurs personnalisées, classes d'algorithmes, classes de produits. Les deux projets sont liés à l'e-commerce, les deux fonctionnent sur des machines différentes et servent des objectifs complètement différents. Cependant, considérant qu'ils ont ces modèles en "commun", je me demandais s'il serait intéressant de créer un troisième projet commun qui sert de "base" avec les modèles de base, et puis tous les deux les projets importeraient les modèles communs de ce projet de base.Inclure le projet Django commun dans plusieurs projets
Cela aiderait aussi car nous pouvons joindre les deux différentes bases de données de clients et de produits des deux sites de commerce électronique dans cette grande base de données commune.
Mes questions sont les suivantes: 1) Quelqu'un a-t-il de l'expérience avec le surdébit possible ou peut-il l'estimer de façon réaliste? Rejoindre les parties communes des deux projets Django sera nécessaire plus tard, mais j'estime qu'il y aura beaucoup de frais généraux dans l'importation d'un troisième projet (éventuellement en temps réel).
2) Quelle serait la meilleure approche pour importer ce troisième projet? Je peux penser à de multiples façons:
- Création d'un emballage, le module Python installable tels que ceux qui existent déjà sur Internet (setuptools, lxml, tastypie) et d'importer ce module dans les deux projets de Django; Avoir le projet assis sur un répertoire dans une machine et importer de ce chemin en temps réel dans le fichier Python (l'a déjà fait, fonctionne mais semble avoir un peu de surcharge);
EDIT: Nos modèles communs/fonctionnalités, en plus, contiennent du contenu secret et breveté, donc la distribution publique est hors de question. Je suppose que la route serait de créer quelque chose comme un paquet, mais pas distribué publiquement, seulement distribué et installé sur les 2 machines spécifiques.
Quelqu'un peut-il donner un avis à ce sujet?
Merci
Cela semble une bonne solution. Cependant, nous avons du matériel commercialisé dans notre matériel commun, donc il ne peut pas être publiquement accessible. Pouvons-nous créer et distribuer le module créé en privé uniquement pour les machines sélectionnées? –
Oui, vous pouvez configurer un dépôt privé localement, ou vous pouvez simplement installer à partir du fichier de l'œuf lui-même, vous n'avez pas besoin de le télécharger jusqu'à Pypi par exemple. – sean