gpt4 book ai didi

python - 在 Heroku 上使用 Python2.7 导入 sqlite3

转载 作者:IT王子 更新时间:2023-10-29 06:26:48 25 4
gpt4 key购买 nike

我正在用 Python 尝试 Heroku,我运行了 "hello word" example with Flask成功。

我现在想部署一个非常基本的应用程序,使用 sqlite3 和 Flask,我知道该应用程序正在运行。但是我无法让它工作,我怀疑问题出在 sqlite 上。

当我启动 Heroku 提供的 Python shell 时,这里是导入错误日志:

$ heroku run python     
Running python attached to terminal... up, run.2
Python 2.7.1 (r271:86832, Jun 26 2011, 01:08:11)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/sqlite3/__init__.py", line 24, in <module>
from dbapi2 import *
File "/usr/local/lib/python2.7/sqlite3/dbapi2.py", line 27, in <module>
from _sqlite3 import *
ImportError: No module named _sqlite3
>>>

我是否需要向用于依赖项的文件 requirements.txt 添加一些内容?到目前为止,它只包含 Flask==0.8。示例中的导入日期时间按预期工作。我查看了 heroku logs,这条消息也出现了,没有任何其他重要消息。

我有办法在 Heroku 上使用一些 sqlite3 吗?感谢您的帮助。

最佳答案

这在 Heroku 上是不可能的,因为 sqlite 需要一个永久的可写文件系统。由于 Heroku 不提供永久可写文件系统,sqlite3 将无法工作。

需要考虑的事项:Heroku 是一个分布式环境。这意味着一个应用程序可以在许多进程中的许多机器上运行。在您的情况下,如果允许,这将生成多个 sqlite3 实例(每个都在本地运行)。

另请参阅:Heroku Devcenter - Read-only Filesystem

关于python - 在 Heroku 上使用 Python2.7 导入 sqlite3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7653010/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com