gpt4 book ai didi

postgresql - 在 Windows 7 上使用 PIP、virtualenv、psycopg2、Django 的 Heroku 教程

转载 作者:行者123 更新时间:2023-11-29 11:35:35 31 4
gpt4 key购买 nike

我最近一直在阅读大量有关 Heroku 的资料,并且正在考虑转向它。我想我会尝试一下他们的小教程并尝试一下。

好的。是时候坦白了。虽然我安装了 virtualenv,但我并没有真正使用它。我不是一个必须经常在不同项目之间切换的人(例如,就像我需要做的承包商一样)。我真的很喜欢它的想法,但没有那么有经验。我知道现在每个人都说这是最佳实践。

我遇到的问题是我无法使用 pip 来安装 psycopg2(这是教程的一部分)。顺便说一句,这是我正在尝试做的事情的链接 ( heroku article )

所以,这对我来说不是一个新问题。我从来没有能够通过 pip 安装东西。我总是遇到问题

Unable to find vcvarsall.bat

我过去在 Windows 机器上解决它的方法是只下载预构建库。如果有人感兴趣但不知道,你可以找到这些here !顺便说一句,感谢 Christoph Gohlke 维护这些!!!!

如果您搜索此 vcvarsall.bat 错误,您会在 Stackoverflow 上找到多个相关帖子。他们都没有帮助我。我最初尝试走 MingGW 路线。经过 2 个晚上的努力(我想我尝试了我能找到的每一个建议),我放弃了尝试(就在我把我的电脑扔出窗外并开始疯狂杀死小猫之前)。因此,我尝试了人们建议的另一条路线 - 即从 Microsoft 下载 VC++ 2008 Express 版。显然,适用于 Windows 的 Python 是使用 VC++ 2008 构建的,对于某些人来说,这比使用 MinGW 更容易。这似乎对我来说效果更好,因为我至少可以得到 pip 来安装它。但是,当我尝试导入时,我遇到了人们似乎遇到的另一个常见问题(至少当你用谷歌搜索时你会得到 pip 击)。

File "C:\foo\bar\venv\lib\site-packages\psycopg2__init __.py", line 67, in from psycopg2._psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID ImportError: DLL load failed: The operating system cannot run %1.

经过一些研究,这似乎是编译后的 _psycopg.pyd 文件试图链接 libpq.dll 时出现的问题。该文件位于 C:\Program Files (x86)\PostgreSQL\9.1\bin\- 在我的路径中。

那么,有人知道如何解决这个问题吗?或者有没有办法让 pip 使用已经在我的站 pip 包中成功安装(通过预构建的库)的 pyscopg2?注意:如果我只是将预构建的 psycopg2 包复制到虚拟环境的站 pip 包中,我就可以解决问题。它将正常导入。但是,当您为 heroku 的要求执行 pip freeze 时,它​​不存在。有没有办法在这上面伪造 heroku?

环境是:Windows 7(64位)、Python 2.6.5、Django 1.3.1、virtualenv 1.6.4、PostgreSQL 9.1、pip 1.0.2

最佳答案

我有过同样的经历。

我注意到当我尝试在旧应用程序上manage.py runserver 时,它在 virtualenv 中不起作用。当我运行 python.exe manage.py runserver 时,它在 virtualenv 中运行。

不幸的是,这个技巧似乎并不适用于 django-admin.py。我收到错误: python.exe: 无法打开文件 'django-admin.py' [Errno 2] No such file or directory

但是当我启动 python 解释器并导入 django 时,它工作得很好。

不确定这是否有帮助,但认为值得一试。

关于postgresql - 在 Windows 7 上使用 PIP、virtualenv、psycopg2、Django 的 Heroku 教程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9012086/

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