我在virtualenv上运行了我的机器上的django项目。有没有办法直接在Heroku上部署我的项目?我遵循heroku文档中提到的步骤,但我对req.txt感到困惑,因为我的项目已经在virtualenv中有req.txt。我是django heroku techs的新手。任何指导都非常感谢。
答案 0 :(得分:0)
requirements.txt文件定义了Heroku将安装的python依赖项。一般来说,您在本地使用的内容与本地开发机器相同。
如果存在差异,您可以选择在本地包含一个包含本地特定于开发的软件包的附加文件(例如django-debug-toolbar)。
答案 1 :(得分:0)
首先,您将激活虚拟环境,然后转到项目根目录并运行该命令 pip freeze> requirements.txt 这将自动在requirements.txt中添加本地计算机的所有依赖项。一旦你推送文件,heroku将自动检测更改并安装它们。
答案 2 :(得分:0)
我的项目已经在virtualenv中有req.txt
你不应该在virtualenv中拥有req.txt
。您应该在项目存储库中有requirements.txt
。 requirements.txt
只是需要在virtualenv中安装的模块列表。您创建并激活一个新的virtualenv,然后运行pip install -r requirements.txt
,它会在virtualenv中安装您需要的所有内容。所以requirements.txt
不是virtualenv的一部分,它更像是如何设置virtualenv的描述。
如果不清楚,您可能会发现我的文章virtualenv demystified很有用。