【问题标题】:Heroku/SQLAlchemy: requirements.txt local does not get uploaded to heroku remoteHeroku/SQLAlchemy:requirements.txt 本地没有上传到 Heroku 远程
【发布时间】:2021-08-27 19:21:53
【问题描述】:

本地pip列表如下

Heroku pip 列表如下

出现错误,因为 SQLAlchemy/FlaskSQLAlchemy 两者/两者中的任何一个都从未安装在 heroku 上。

使用“heroku run pip install Flask-SQLAlchemy”手动安装或任何其他安装说它完成但实际上没有发生。

手动将文本附加到 heroku 文件的 requirements.txt 也不起作用,因为它不会将文本添加到文件中,尽管在执行命令时不会引发错误。

【问题讨论】:

  • 您的requirements.txt 在您的项目中看起来如何?
  • appdirs==1.4.4 cachelib==0.1.1 certifi==2021.5.30 click==8.0.1 colorama==0.4.4 distlib==0.3.2 filelock==3.0.12 Flask==1.1.2 Flask-Session==0.3.2 Flask-SQLAlchemy==2.5.1 greenlet==1.1.0 itsdangerous==2.0.1 Jinja2==3.0.1 MarkupSafe==2.0.1 pipenv==2021.5 .29 六==1.16.0 SQLAlchemy==1.4.17 virtualenv==20.4.7 virtualenv-clone==0.5.4 Werkzeug==2.0.1 WTForms==2.3.3
  • 以上每一项都在一行中
  • 您确定pip list 显示您部署的应用程序的已安装模块吗?您的更多requirements.txt 丢失了...如果您在heroku 上部署您的应用程序,您是否会收到有关安装上述模块的任​​何错误?
  • 不,它没有显示任何错误,如果我手动安装它们,它会显示已安装但如果我检查安装后它说不存在。

标签: flask heroku sqlalchemy flask-sqlalchemy requirements.txt


【解决方案1】:

找到了解决办法: 需要在Pipfile中添加sqlalchemy等包

Pipfile 之前

[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true

[packages]
flask = "*"
gunicorn = "*"

[dev-packages]

[requires]
python_version = "3.9.5"

Pipfile 之后

[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true

[packages]
flask = "*"
gunicorn = "*"
sqlalchemy = "*"
flask-sqlalchemy = "*"
wtforms = "*"

[dev-packages]

[requires]
python_version = "3.9.5"

然后运行

pipenv lock

提交并推送更改,然后检查 heroku 上的 requirements.txt,您会注意到其中存在 sqlalchemy

【讨论】:

    猜你喜欢
    • 2012-04-22
    • 1970-01-01
    • 2015-07-20
    • 2023-03-06
    • 2019-01-04
    • 2013-09-11
    • 1970-01-01
    • 1970-01-01
    • 2017-07-23
    相关资源
    最近更新 更多