Das verstehe ich wirklich nicht, also wenn jemand erklären könnte, wie das funktioniert, würde ich das sehr schätzen. Ich habe zwei Anwendungen, Accounts und Theme... hier ist meine Einstellungsliste:
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'accounts',
'themes',
)
In Accounts versuche ich dies zu machen:
from themes.models import Theme
class Account(models.Model):
ACTIVE_STATUS = 1
DEACTIVE_STATUS = 2
ARCHIVE_STATUS = 3
STATUS_CHOICES = (
(ACTIVE_STATUS, ('Aktiv')),
(DEACTIVE_STATUS, ('Deaktiviert')),
(ARCHIVE_STATUS, ('Archiviert')),
)
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=250)
slug = models.SlugField(unique=True, verbose_name='URL Slug')
status = models.IntegerField(choices=STATUS_CHOICES, default=ACTIVE_STATUS, max_length=1)
owner = models.ForeignKey(User)
enable_comments = models.BooleanField(default=True)
theme = models.ForeignKey(Theme)
date_created = models.DateTimeField(default=datetime.now)
Und in meinem Theme-Modell:
class Theme(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=250)
slug = models.SlugField(unique=True, verbose_name='URL Slug')
date_created = models.DateTimeField(default=datetime.now)
class Stylesheet(models.Model):
id = models.AutoField(primary_key=True)
account = models.ForeignKey(Account)
date_created = models.DateTimeField(default=datetime.now)
content = models.TextField()
Django gibt den folgenden Fehler aus:
from themes.models import Theme
ImportError: kann Namen Theme nicht importieren
Ist das eine Art von zirkulärem Importproblem? Ich habe versucht, eine verzögerte Referenz zu verwenden, aber das scheint auch nicht zu funktionieren!