【问题标题】:How do I set up SQLite with a Django project?如何使用 Django 项目设置 SQLite?
【发布时间】:2011-12-28 05:37:12
【问题描述】:

我已阅读 Django 文档(供参考,https://docs.djangoproject.com/en/1.3/intro/tutorial01/),但在设置 Django 项目以使用数据库时仍然遇到问题。因为我是 Web 开发的新手,所以我想我会从 SQLite 开始进行开发,因为我还没有将任何东西投入生产并且对数据库没有太多经验。 (不过,我可以从 MySQL 或 PostgreSQL 开始。)

在我的 Django 项目文件夹中,我知道我需要编辑 settings.py 文件夹来指定数据库和其他一些东西。问题是当我在终端中运行 python manage.py syncdb 时,它会失败并显示以下消息:

django.core.exceptions.ImproperlyConfigured: Error loading either pysqlite2 
or sqlite3 modules (tried in that order): No module named _sqlite3

我假设我的部分问题是我从源代码安装了 Python (2.7)(在 How would I build python myself from source code on Ubuntu? 中进行了深入解释),但我的终端可能默认为默认安装在 Ubuntu 上的 Python。或者我想可能是我从源代码构建的 Python (2.7) 不知何故没有链接到 SQLite。或者我想可能是我需要在 DATABASES 中的 NAME 项下的 settings.py 中指定一个 SQLite 文件,尽管我很确定这对于 SQLite 来说不是必需的。

谁能找出罪魁祸首?我将如何将此作为长期解决方案进行补救(即,有什么方法可以消除在 Ubuntu 上同时安装两个 Python 的歧义?)最重要的是,我需要做什么来建立一个工作数据库?

【问题讨论】:

  • 您的自定义 Python 安装在哪里?刚刚从您的PATH 中删除它可能会解决问题。
  • 此外,如果您不确定是否安装了 pysqlite2,您可以使用 easy_install 使其正常运行。只需谷歌即可。
  • Ahmet:好的,我将如何重新编译从源代码构建的 Python? larsmans:它安装在 /usr/local 虽然我认为可执行的 python2.7 在 /usr/local/bin 中。我不知道该怎么做你能解释一下吗?保罗:需要 pysqlite2 吗? (只是让你们知道我刚刚开始使用 Linux)

标签: python django sqlite


【解决方案1】:

执行“sudo apt-get install libsqlite3-dev”,然后重新编译 Python 2.7。

从长远来看,为了减少共存 Python 安装和包的歧义,我强烈建议安装 pip、virtualenv 和 virtualenvwrapper。

【讨论】:

  • 我已经做了 sudo apt-get install libsqlite3-dev。我不知道如何重新编译。你能解释一下吗? (我是 Linux 新手。)
  • "recompile" 意味着从源代码构建,这就是你所说的:)
  • 谢谢哈哈。经过 3 年的 Java 学习,我应该已经猜到了,哈哈
猜你喜欢
  • 2013-07-20
  • 2011-05-30
  • 2016-01-14
  • 1970-01-01
  • 2021-03-06
  • 2014-07-15
  • 1970-01-01
  • 1970-01-01
  • 2020-02-26
相关资源
最近更新 更多