什么Python / IronPython Web开发框架可以在Microsoft技术堆栈上运行?

时间:2010-02-18 22:39:10

标签: python ironpython

我开始使用IronPython实现学习Python。我现在想做一些网络开发。我正在寻找一个适用于Microsoft技术堆栈(IIS + MS SQL Server)的python Web开发框架。 Django看起来像一个有趣的框架,但根据我所读到的,让它在Microsoft技术堆栈上工作似乎非常困难或不可能。

我想利用一个利用python优势的Web框架,因此ASP.NET不是一个选项。

我想在完整的Microsoft堆栈上执行Python的原因是:

  • 我们是.Net商店,我们的生产服务器运行完整的Microsoft堆栈
  • 使用IronPython,我将能够与我们产品现有的.Net库互操作
  • 我们现有的数据库在SQL Server中运行,我想开发一个查询该数据库的应用程序
  • 如果我必须安装其他网络服务器,则不允许将我的Python项目部署到我们的服务器

有什么建议吗?

3 个答案:

答案 0 :(得分:7)

使用完整的MS堆栈将很困难,因为没有太多的FLOSS框架。使用WAMP(Windows / Apache / MySQL-PostgreSQL / Python)方法会有更好的运气。

话虽这么说,Django可以在Windows上使用,甚至can be made to work under IIS使用PyISAPIeMS SQL Server支持。

TurboGears can also be installed on Windows,并通过其ORM后端MS SQL Server support

尝试在Windows下使用-AMP有时可能是受虐狂的练习。它可以完成,但在Linux / BSD下使用这些框架更容易和愉快。你一定要试试。

答案 1 :(得分:3)

虽然可能还不完全成熟,isapi-wsgi看起来像是在IIS上运行WSGI中间层的一种有前途的方式(我没有亲身体验它,但似乎值得一试!)。一旦你运行几乎所有Python Web框架的WSGI,包括Django,都应该运行它(我个人最喜欢的是werkzeug,一个 - 在WSGI之上的实用程序框架,但我意识到它可能比大多数Web开发人员更喜欢典型的Web应用程序和网站的抽象级别更低。

django-mssql应该让Django在SQL Server上运行良好并且看起来相当成熟(再次,没有动手经验)。如果您更喜欢更复杂的对象关系映射器,SQLalchemy声称支持MS-SQL“开箱即用”,但有一些限制(例如,每个表不超过一个IDENTITY列。)

如果您想坚持使用IronPython,但可以使用SQLite而不是MS-Server,那么也应该可以在IIS中使用Django on IronPython

答案 2 :(得分:1)

Django理论上运行在Windows上,但使用的是Apache和MySQL。在IIS上运行它是不可能的(当然不推荐)。

我知道你完全没有问这个问题,但我必须建议,如果你真的想进入Python网站开发,那么查看Linux技术堆栈绝对是推荐的方法。 :)