ich nie so so etwas getan habe, ich bin nicht sicher, was zur Lösung dieses Problems des besten Ansatz wäre:Django - Import-Modell aus einem anderen Projekt
Ich habe zwei Projekte Django:
root/
project1/
manage.py
project1/
models.py
urls.py
...
project2/
manage.py
project2/
models.py
urls.py
...
Diese Projekte verwenden dieselbe Datenbank, sie haben jeweils etwa 10 Modelle (Datenbanktabellen) und einige der Modelle überlappen: Project1 benötigt ForeignKey von einem der Project2-Modelle, aber auch Project2 benötigt ForeignKey von einem der Project1-Modelle:
Projekt1:
class Area_model(models.Model):
name = models.CharField(max_length=25)
url = models.CharField(max_length=25)
class Question_model(models.Model):
text = models.TextField(max_length=1000)
date = models.CharField(max_length=40)
answer = models.SmallIntegerField()
...
employee = models.ForeignKey(Employee_model)
Projekt2:
class Employee_model(models.Model):
name = models.CharField(max_length=15)
adress = models.CharField(max_length=15)
area = models.ForeignKey(Area_model)
Ich versuchte project1.models in project2 der models.py zu importieren, aber es sagt, 'unbekannter Modul'. Ich muss Projekt1 in Projekt2 importieren und umgekehrt, wird das ein Problem sein? (Kreisreferenz?) Wenn ja, wie kann ich dies auf eine andere Weise erreichen?
Warum muss es für verschiedene Projekte sein? Warum machen Sie nicht einfach zwei wiederverwendbare Apps? – e4c5
Wiederverwendbare Apps, das gefällt mir. Apps sollten in einem Python-Paket gepackt sein und installierbar sein, zum Beispiel mit "pip" oder "python setup.py install". – slackmart
Hier https://github.com/slackmart/tastypie-sepomex ein Beispiel, erkunden Sie die 'setup.py'. – slackmart