我已经在python中做了一些工作,但这些都是针对独立应用程序的。我很好奇是否有python的分支支持web开发?
有人会推荐一个很好的教程或网站吗?我可以从中学到一些使用python进行web开发的基础知识。
发布于 2009-05-22 11:35:19
现在每个人都说了Django,我可以补充我的两点意见:我认为在使用Django之前,先看看不同的组件可能会学到更多。对于使用Python进行web开发,您通常需要3个组件:
HTTP模板语言(例如,用来创建页面的
上面的所有链接都有很好的教程。对于许多现实世界的用例,Django将是一个比这样的堆栈更好的解决方案,因为它无缝地集成了这个功能(甚至更多)。如果你需要一个CMS,Django是你比Zope更好的选择。然而,要很好地掌握发生了什么,松散耦合的程序堆栈可能会更好。Django隐藏了很多细节。
发布于 2009-05-21 22:07:28
3年后编辑的:不要使用mod_python,使用mod_wsgi。Flask和Werkzeug也是很好的框架。需要知道发生了什么是有用的,但这不是必需的。那就太愚蠢了。
在很好地掌握Django代表您所做的事情之前,不要查找Django。为了你。使用mod_python及其request对象编写一些基本的应用程序。我刚刚开始学习使用mod_python进行web开发的Python,它非常棒。
mod_python还在site-packages/mod_python/publisher.py中使用了一个分派器。浏览一下这篇文章,看看如何以简单的方式处理请求。
您可能需要在Apache文件中添加一些配置来启动并运行mod_python,但是mod_python站点对此进行了很好的解释。
<Directory /path/to/python/files>
AddHandler mod_python .py
PythonHandler mod_python.publisher
PythonDebug On
</Directory>你已经离开了!
使用(作为一个愚蠢的基本示例):
def foo(req):
req.write("Hello World")在/path/to/python/files/bar.py中,假设/path/to是您的站点根。
然后你就可以
http://www.mysite.com/python/files/bar/foo去看"Hello World“。另外,让我犯了一个错误,那就是dispatcher使用了一种差劲的方法来确定内容类型,所以强制使用:
req.content_type = 'text/html'好运
在您对Python如何与mod_python和Apache进行交互有了很好的了解之后,就可以使用一个框架来为您完成所有乏味的工作。不过,这取决于你,只是我的建议
发布于 2009-05-22 09:14:50
如果你真的不想深入研究框架--我强烈推荐Django或Pylons --仍然需要沿着CGI的道路走下去。这是一项完全过时的技术,更不用说速度和效率低下了。
有一种构建Python web应用程序的标准方法,叫做WSGI。如果你想从头开始开发你自己的web应用,这绝对是个不错的选择。
也就是说,如果你刚刚开始,你真的应该使用其中一个框架。
https://stackoverflow.com/questions/895420
复制相似问题