【发布时间】:2017-01-30 21:50:24
【问题描述】:
我刚开始学习 Django。我关于该框架的主要知识来源是 Rudolph Snellius、Jeff Forcier 和 Wesley Chun 所著的《Python Web Development with Django》一书。
你能解释一下如何在 Django 中使用 SQlite 吗?这本书是几年前的,这就是为什么我在配置数据库时遇到了一些问题。
我正确完成的第一步是使用命令./manage.py startapp blog 创建一个应用程序,然后我在setting.py 文件中将mojprojekt 添加到元组INSTALLED_APPS 中。然后我必须将DATABASE_ENGINE = 'sqlite3' 和DATABASE_NAME = 'path to my project' 的诗句添加到settings.py。
最后一步是运行命令./manage.py syncdb。在此之后我收到一个错误:
konrad@konrad-MS-7823:~/Documents/Django/mojprojekt$ ./manage.py syncdb
Traceback (most recent call last):
File "./manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 354, in execute_from_command_line
utility.execute()
File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 328, in execute
django.setup()
File "/usr/lib/python2.7/dist-packages/django/__init__.py", line 18, in setup
apps.populate(settings.INSTALLED_APPS)
File "/usr/lib/python2.7/dist-packages/django/apps/registry.py", line 85, in populate
app_config = AppConfig.create(entry)
File "/usr/lib/python2.7/dist-packages/django/apps/config.py", line 119, in create
import_module(entry)
File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
ImportError: No module named blog
konrad@konrad-MS-7823:~/Documents/Django/mojprojekt$
如果你知道我在哪里犯了错误,你能帮助我吗?
更新:这是我的应用程序定义:
# Application definition
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'mojprojekt.blog',
)
这仍然给出相同的结果。
【问题讨论】:
-
INSTALLED_APPS中的名称应与./manage.py startapp中的名称相同,因此如果您使用startapp blog,则应该是博客,而不是mojproject -
如果它有几年的历史,请不要打扰它。 Django 已经发展了很多。您的应用应该只是“博客”而不是“myproject.blog”