Teilen von Modellen zwischen Django-Apps
Ich werde mich kurz fassen: der Geist und die Idee einer Django-app, ist es ok, für eine app zum import von Modellen, die von innerhalb einer anderen app ? Sagen wir, ein Benutzer-Statistik-app importieren Sie Modelle aus einer User-app so etwas wie: vom Anwender.Modelle importieren von Benutzern
InformationsquelleAutor der Frage Nicolae Surdu | 2010-11-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie eine interne app, die keine chance hat, jemals für die öffentlichkeit freigegeben, Sie sicher, tun, was Sie wollen.
Wenn Sie eine interne app, hat kaum eine chance, jemals für die öffentlichkeit freigegeben, aber wird möglicherweise von zukünftigen/aktuellen Entwickler, sicher, aber sicher sein, um zu dokumentieren, was die app benötigt, um korrekt zu arbeiten.
Wenn Sie eine app für den öffentlichen release, versuchen, es selbst abhängig (und django-Interna abhängig, ie, verwenden, was django bietet, wenn möglich). Wenn Sie wirklich brauchen eine Drittanbieter-app zu arbeiten, oder wenn Sie ein Drittanbieter-app würde Ihr code mehr überschaubar sind, dann sind Sie sicher, umfassen Abhängigkeiten, aber doppelt sicher zu dokumentieren alle Anforderungen und notwendigen Einrichtung.
In den meisten Fällen, Sie können tun fast alles, was Sie wollen, so lange, wie Sie haben ausreichende Dokumentation.
Ich tun, allerdings Frage der Vernunft, Ihre eigenen
User
Modell, das den gleichen Namen wie django ' s builtinauth.User
.InformationsquelleAutor der Antwort eternicode
Ist die Antwort ja. Es ist völlig in Ordnung für eine Anwendung in Ihren django-Projekt zu importieren Sie Modelle aus einer anderen Anwendung. Die Leistung eines django-Projektes liegt in den apps und Ihren Interaktionen.
Stellen Sie außerdem sicher, dass Sie utility-Anwendungen importieren von Modellen aus mehr generische Anwendungen und nicht in die andere Richtung. So "userstatistics" sollte die app importieren Sie Modelle aus der "Benutzer" - app, sondern "Benutzer" - app soll sich nicht auf die "userstatistics".
Wenn Ihre app importieren von Modellen aus einer 3rd-party-Anwendung (sagen wir django-Kolben), sicher sein, um festzulegen, dass eine den Anforderungen Datei.
InformationsquelleAutor der Antwort tarequeh
Ihnen cand versuchen besser die Verlängerung der Django-User-Modell mit Vererbung. Sie nutzen die django-Benutzer mit benutzerdefinierten Feld Hinzugefügt, so dass Sie den selben Benutzer für alle apps.
InformationsquelleAutor der Antwort Teodor Pripoae
Tun das nicht. Sie haben das gleiche app-Namen und die ORM wird verwechselt werden. Verwenden Sie ein abstraktes Modell statt, und haben beide daraus ziehen.
InformationsquelleAutor der Antwort Ignacio Vazquez-Abrams