使用 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
to my views.py
代码导致服务器启动时发生以下错误python manage.py runserver
:
“运行时错误:模型类 simple.models.SuperSimpleModel 未声明显式 app_label,并且两者都不是
在 INSTALLED_APPS 中的应用程序中,或者在其之前导入
应用程序已加载。”
我认为我的应用程序未正确初始化?我已将这个问题归结为上述一组简单的可重现步骤。我没有改变任何东西settings.py
在上述步骤中。通常,我需要配置数据库,但我什至不需要这样做就可以重现错误。
您是正确的,您需要修改此处的设置。作为示例,请参见这个 Django 教程步骤 https://docs.djangoproject.com/en/1.9/intro/tutorial02/#activating-models.
从您在这里提供的内容来看,您似乎必须添加'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'
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)