django 诗歌和Vercel问题

bttbmeg0  于 2023-10-21  发布在  Go
关注(0)|答案(1)|浏览(127)

我最近发现了关于诗歌的事情,我很惊讶它和普通的pip之类的东西相比有多好。但是当我试图在Vercel上托管我的Django应用程序时,我面临着一些问题。因为维塞尔没有诗歌的功能,我不能在那里主持我的 Django 。
我试过chatgpt,解决方案是修改vercel.json文件。

{
  "build": {
    "env": {
      "POETRY_VERSION": "1.1.4"
    }

  },
  "builds": [
    {
      "src": "test/wsgi.py",
      "use": "@vercel/python",
      "config": {
        "maxLambdaSize": "15mb", 
        "runtime": "python3.9"
      }
    }
  ],
  "routes": [
    {
      "src": "/(.*)",
      "dest": "test/wsgi.py"
    }
  ]
}

但后来我犯了这些错误
[错误]运行时.ImportModuleError:无法导入模块'footer':没有名为'django'的模块
然后我尝试了这个解决方案vercel-poetry,但当我遵循这个解决方案时,我的应用程序甚至不会部署,它甚至会给构建部分给予错误
错误:命令失败:python3.9 -m poetry export --without-hashes -f requirements.txt --output requirements.txt

导入错误:urllib 3 v2.0仅支持OpenSSL 1.1.1+,目前'ssl'模块使用'OpenSSL 1.0.2k-fips 26 Jan 2017'编译。看到:https://github.com/urllib3/urllib3/issues/2168所以在用尽一切,我可以在这里寻求帮助。

ej83mcc0

ej83mcc01#

您的依赖项未安装。Vercel需要在项目的根目录中添加requirements.txt文件,以正确安装依赖项。您可以在本地使用poetry管理您的deps,但您确实需要一个requirements.txt
您可以使用Git钩子来自动化每次提交时运行poetry export --without-hashes > requirements.txt的过程。Git钩子是在Git工作流中的某些点自动运行的脚本。
以下是如何设置Git钩子来运行诗歌导出命令:
1.导航到Git仓库的根目录。
1.在.git/hooks目录中创建一个名为pre-commit的新文件。如果预提交文件已经存在,请打开它进行编辑。
1.将以下代码添加到预提交文件:

#!/bin/bash

# Run poetry export command
poetry export --without-hashes > requirements.txt

# Stage the updated requirements.txt file
git add requirements.txt

1.保存预提交文件并退出编辑器。
1.通过运行以下命令使预提交文件可执行:

chmod +x .git/hooks/pre-commit

现在,每次提交时,pre-commit钩子都会自动运行poetry export命令并更新requirements.txt文件。更新后的requirements.txt文件将与其他更改一起暂存沿着提交。
请注意,这种方法假设你已经在本地机器上正确安装和配置了poetry。这将在你每次提交时更新你的requirements.txt并暂存它。

相关问题