【发布时间】:2017-08-21 19:42:57
【问题描述】:
我有一个 django 应用程序,但出现错误应用程序尚未加载。我正在使用 postgres 数据库。添加模型后问题开始发生。我尝试将模型添加到已安装的应用程序中,将 django 设置更改为模型下方,将名称添加到我的模型类中,将元数据添加到我的模型类中。我不确定使用 django.db 导入模型是否存在问题。
这是完整的错误
raise AppRegistryNotReady("Apps aren't loaded yet.") django.core.exceptions.AppRegistryNotReady: Apps arne't loaded yet.
settings.py
import os
SECRET_KEY = 'secret_key'
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/1.10/howto/deployment/checklist/
# SECURITY WARNING: keep the secret key used in production secret!
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = []
# Application definition
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.gis',
'django.contrib.sites',
'myapps.modelapp'
]
modelapp.py
from django.db import models
from django.contrib.postgres.fields import ArrayField
class AppClass(models.Model):
name = 'modelapp'
verbose_name = 'modelapp'
# Regular Django fields corresponding to the attributes in the
# world borders shapefile.
data_1 = models.CharField('data_1', max_length=30)
# Returns the string representation of the model.
def __str__(self): # __unicode__ on Python 2
return self.parcel_own
class Meta:
managed = True
db_table = 'table_name'
【问题讨论】:
-
请显示完整回溯。将
myapps.modelapp添加到INSTALLED_APPS看起来非常错误。您应该将应用程序或应用程序配置添加到INSTALLED_APPS。modelapp.py应该是什么?如果它包含模型,那么为什么不将其命名为models.py?