我有两个 Django 应用程序,
每个都有一个models.py.
我想将数据库连接到每个应用程序,
我该怎么办?
第一个应用程序是通知。如果只通知连接到数据库,它会正常工作。
#/notice/models.py
from django.db import models
from django.db.models.base import Model
class Notice(models.Model):
subject = models.CharField(max_length=100)
content = models.TextField()
create_date = models.DateTimeField()
def __str__(self):
return self.subject
这是第二个应用程序,rc_db。如果我连接rc_db,则出现最低错误。
#/rc_db/models.py
from django.db import models
from django.db.models.base import Model
# Create your models here.
class rc_db(models.Model):
subject = models.CharField(max_length=100)
content = models.TextField()
create_date = models.DateTimeField()
#/config/settings/base.py
BASE_DIR = Path(__file__).resolve().parent.parent.parent
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'info',
'rcdb',
'notice.apps.NoticeConfig',
'rc_db.apps.RcDbConfig',
]
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': BASE_DIR / 'db.sqlite3',
},
}
出现这样的错误。
django.core.exceptions.ImproperlyConfigured: Application labels aren't unique, duplicates: rc_db
答案 0 :(得分:0)
我从 base.py 中删除了 rcdb,它可以正常工作。
#/config/settings/base.py
BASE_DIR = Path(__file__).resolve().parent.parent.parent
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'info',
'notice.apps.NoticeConfig',
'rc_db.apps.RcDbConfig',
]