已经尝试Web2Py几天了,我决定将其作为管理员。但是有一件事让我非常关注,最终可能会成为热门。我需要一个值得信赖的高效开发环境和设置。来自MS Visual Studio世界,我正在寻找具有良好的自动完成功能/智能感知+用于版本控制和部署的功能的东西。
我做了一些尝试来在Eclipse中编辑我的代码,但是它需要额外的设置才能与自动完成一起运行,并且对于调试我不知道是否可行。 (注意到在Eclipse中有一个Django项目模板,我必须说这有点吸引人。)
Wing Ide对如何启动和运行web2py进行了指导,我将对其进行测试。它不是免费的,但是与Windows世界中的许多软件相比非常便宜。
我还想要一个好的版本控制(hg)设置,最好是一种半自动的FTP部署方法。
Web2Py开发人员使用什么IDE,您的设置如何?
在良好的IDE中为项目提供完整的安装脚本非常棒! (就像安装一样,一键使它运行100%)。
Pycharm看起来不错,也许可以添加web2py支持http://youtrack.jetbrains.net/issue/PY-1648
非常感谢!
最佳答案
剧本
在web2py中创建新项目后,将一些脚本添加到主应用程序文件夹中:
web2py \ applications \ myapp \ DebugWinpdb.bat:
C:\Python25\Scripts\winpdb.bat ..\..\web2py.py -i 127.0.0.1 -p8000 -mypassword
web2py \ applications \ myapp \ DebugShell.bat:
C:\Python25\Scripts\winpdb.bat ..\..\web2py.py -S myapp -M
web2py \ applications \ myapp \ Shell.bat:
python ..\..\web2py.py -S myapp -M
集成开发环境
正如其他人所述,无论您使用哪种IDE,都需要做一些extra stuff来获取web2py的自动完成/智能提示。
对我来说,NetBeans是一切都可以做到的方法(Eclipse / PyDev)和基本但很少补充(PyScripter)之间的完美折衷。
NetBeans设置(项目属性):
web2py.py
-i 127.0.0.1 -p 8000 -a mypassword
NetBeans的优点:
NetBeans的:
版本控制
我使用并强烈建议使用Mercurial进行源代码控制。如前所述,NetBeans对Mercurial具有很好的支持,但是我还是想在TortoiseHg中做一些事情。
TortoiseHg的优点:
TortoiseHg Cons :
hg addremove
是一种可靠的解决方法)出版
我将WinSCP(用于浏览),PuTTY(用于终端命令)和TortoiseHg(用于我的存储库的推/拉)结合使用,以与Webfaction上的共享主机帐户一起使用。
我要做的第一件事是设置公用/专用密钥加密。如果您无法在Windows和Linux之间进行此设置,请尝试these instructions from Andre Molnar。简而言之,您需要在Linux上使用ssh-keygen生成私钥,然后使用WinSCP将其复制到Windows计算机,然后将其转换以与WinSCP和PuTTY一起使用。
然后将以下行添加到您的全局mercurial.ini文件中:
[ui]
ssh = "C:\Program Files\TortoiseHg\TortoisePlink.exe" -ssh -2 -i "c:\path\to\your\privatekey.ppk"
即使必须连接到多个服务器,也只需要将公钥复制到每个不同的服务器。您还需要让WinSCP和PuTTY知道您的私钥位于何处,但是它们很容易弄清楚。