我正在尝试使用Django构建我的第一个Web应用程序。
我实际上是指在Oracle Database 11g中使用Python(在“使用Django框架”部分下)
但是在尝试执行命令python manage.py runserver时却出现错误
遵循的步骤
django-admin.py startproject myproj
cd myproj
python manage.py startapp myapp
成功执行上述命令后,下一步就是修改连接设置,以允许应用程序连接到文件myproj / settings.py中的数据库。
在这里我用数据库详细信息更新了详细信息
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.oracle',
'NAME': '<our ebs database name>',
'USER': <username>,
'PASSWORD': <password>,
}
}
还在INSTALLED_APPS下添加了项目,以将应用程序与项目关联:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'myproj.myapp'
]
在终端窗口中,当我尝试从myproj目录执行以下命令时:
python manage.py runserver
我收到以下错误消息
C:\ Users \ xxx \ Desktop \ Python files \ myproj> python manage.py runserver
.wrapper在0x00000274CA28AEA0处启动的线程中未处理的异常>
回溯(最近通话最近一次):
在创建过程中,文件“ C:\ Users \ xxx \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ django \ apps \ config.py”
cls = getattr(mod, cls_name)
AttributeError:模块'myproj'没有属性'myapp'
在处理上述异常期间,发生了另一个异常:
回溯(最近通话最近一次):
包装中的文件“ C:\ Users \ xxx \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ django \ utils \ autoreload.py”,第225行
fn(*args, **kwargs)
inner_run中的第109行“ C:\ Users \ xxx \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ django \ core \ management \ commands \ runserver.py”
autoreload.raise_last_exception()
文件“ C:\ Users \ xxx \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ django \ utils \ autoreload.py”,第248行,位于raise_last_exception
raise _exception[1]
在执行的第337行,文件“ C:\ Users \ xxx \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ django \ core \ management__init __。py”
autoreload.check_errors(django.setup)()
包装中的文件“ C:\ Users \ xxx \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ django \ utils \ autoreload.py”,第225行
fn(*args, **kwargs)
文件“ C:\ Users \ xxx \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ django__init __。py”,设置中的第24行
apps.populate(settings.INSTALLED_APPS)
填充的文件“ C:\ Users \ xxx \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ django \ apps \ registry.py”,第89行,
app_config = AppConfig.create(entry)
在创建时在第123行添加文件“ C:\ Users \ xxx \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ django \ apps \ config.py”
import_module(entry)
import_module中的文件“ C:\ Users \ xxx \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ importlib__init __。py”,第127行
return _bootstrap._gcd_import(name[level:], package, level)
_gcd_import中的文件“”,第1006行
文件“”,第983行,位于_find_and_load
“ _ find_and_load_unlocked”中第965行的文件“”
ModuleNotFoundError:没有名为“ myproj.myapp”的模块
答案 0 :(得分:0)
我是Django的新手。我认为问题是myproj.myapp
。您不需要项目名称,只需将'myapp',
添加到INSTALLED_APPS。希望这会有所帮助。
答案 1 :(得分:0)
来自"Writing your first Django app, part 2: Activating models" tutorial:
要将应用程序包含在我们的项目中,我们需要在
INSTALLED_APPS
设置中添加对其配置类的引用。PollsConfig
类位于polls/apps.py
文件中,因此其虚线路径为'polls.apps.PollsConfig'
。编辑mysite/settings.py
文件,然后将该虚线路径添加到INSTALLED_APPS
设置中。看起来像这样:
mysite/settings.py
¶INSTALLED_APPS = [ 'polls.apps.PollsConfig', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ]
因此,请查看myproj/apps.py
,看看该类的名称是什么,并且您的INSTALLED_APP
应该类似于:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'myproj.apps.MyprojConfig'
]