使用Python 2.7.x + Django 1.9:
我创建了一个新的超级简单的Django骨架项目 django-admin startproject simple
作为一个健全性检查,我创建了一个views.py
带有简单视图的文件,该文件输出"hello world"类型测试消息和到该视图的url路径.我可以运行它,python manage.py runserver
它工作正常.
我models.py
用一个超级简单的Django ORM模型类创建一个文件.仅供参考,我的目标是使用现有的表和模式,因此我不希望ORM生成新表.
class SuperSimpleModel(models.Model): some_value = models.CharField(blank=True, null=True) class Meta: managed = False db_table = 'model_test_table'
仅添加import models
到我的views.py
代码会导致在服务器启动时发生以下错误python manage.py runserver
:
"RuntimeError:Model类simple.models.SuperSimpleModel没有声明一个显式的app_label,也没有在INSTALLED_APPS的应用程序中,或者在加载应用程序之前导入了它."
我认为我的应用程序没有正确初始化?我把这个问题归结为上述简单的可重复步骤.我settings.py
在上面的步骤中没有改变任何内容.通常,我需要配置数据库,但我可以重现错误,甚至没有这样做.
你是对的,你需要在这里修改设置.作为示例,请参阅此Django教程步骤.
从您在这里提供的内容来看,看起来您将不得不添加'simple'
到您的INSTALLED_APPS
设置中.所以这个设置最终会看起来像这样:
INSTALLED_APPS = [ 'simple', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ]
请注意'simple'
,根据您的PYTHONPATH设置方式,它本身可能不合适.您可能需要为应用程序添加更具体的路径,如上面的教程步骤所做的那样'polls.apps.PollsConfig'
.