heroku 没有名为 _sqlite3 的模块
Posted
技术标签:
【中文标题】heroku 没有名为 _sqlite3 的模块【英文标题】:heroku No module named _sqlite3 【发布时间】:2012-07-20 10:23:39 【问题描述】:尝试在 heroku 上部署 django 应用程序时,我收到以下错误。我可以在本地测试。它工作正常。但是“heroku run python manage.py syncdb”会导致以下错误。我浏览了其他一些相关的帖子,但找不到满意的答案。
我有 python 2.7 和 django 1.3 并使用 sqlite3 作为数据库。我正在尝试在 heroku 上部署以下内容 - https://github.com/Stackato-Apps/pinax-social。如果您需要更多信息,请告诉我。
Traceback (most recent call last):
File "manage.py", line 31, in <module>
execute_from_command_line()
File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/__init__.py", line 429, in execute_from_command_line
utility.execute()
File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/__init__.py", line 379, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/__init__.py", line 257, in fetch_command
klass = load_command_class(app_name, subcommand)
File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/__init__.py", line 67, in load_command_class
module = import_module('%s.management.commands.%s' % (app_name, name))
File "/app/.heroku/venv/lib/python2.7/site-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/commands/syncdb.py", line 7, in <module>
from django.core.management.sql import custom_sql_for_model, emit_post_sync_signal
File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/sql.py", line 5, in <module>
from django.contrib.contenttypes import generic
File "/app/.heroku/venv/lib/python2.7/site-packages/django/contrib/contenttypes/generic.py", line 6, in <module>
from django.db import connection
File "/app/.heroku/venv/lib/python2.7/site-packages/django/db/__init__.py", line 75, in <module>
connection = connections[DEFAULT_DB_ALIAS]
File "/app/.heroku/venv/lib/python2.7/site-packages/django/db/utils.py", line 91, in __getitem__
backend = load_backend(db['ENGINE'])
File "/app/.heroku/venv/lib/python2.7/site-packages/django/db/utils.py", line 32, in load_backend
return import_module('.base', backend_name)
File "/app/.heroku/venv/lib/python2.7/site-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
File "/app/.heroku/venv/lib/python2.7/site-packages/django/db/backends/sqlite3/base.py", line 34, in <module>
raise ImproperlyConfigured("Error loading %s: %s" % (module, exc))
django.core.exceptions.ImproperlyConfigured: Error loading either pysqlite2 or sqlite3 modules (tried in that order): No module named _sqlite3
【问题讨论】:
嗯,这些包似乎丢失了,或者它们从你的 python 路径中丢失了 你不能在 Heroku 上使用 sqlite3。您需要使用 postgres。 【参考方案1】:Heroku 不支持 SQLite3,您应该使用 Postgres 配置您的应用程序,如下所述https://devcenter.heroku.com/articles/django#database-settings
【讨论】:
以上是关于heroku 没有名为 _sqlite3 的模块的主要内容,如果未能解决你的问题,请参考以下文章
导入 matplotlib 失败,在 heroku 上没有名为 _tkinter 的模块
Heroku:ModuleNotFoundError:没有名为“请求”的模块