我开始使用IronPython实现学习Python。我现在想做一些网络开发。我正在寻找一个适用于Microsoft技术堆栈(IIS + MS SQL Server)的python Web开发框架。 Django看起来像一个有趣的框架,但根据我所读到的,让它在Microsoft技术堆栈上工作似乎非常困难或不可能。
我想利用一个利用python优势的Web框架,因此ASP.NET不是一个选项。
我想在完整的Microsoft堆栈上执行Python的原因是:
有什么建议吗?
答案 0 :(得分:7)
使用完整的MS堆栈将很困难,因为没有太多的FLOSS框架。使用WAMP(Windows / Apache / MySQL-PostgreSQL / Python)方法会有更好的运气。
话虽这么说,Django可以在Windows上使用,甚至can be made to work under IIS使用PyISAPIe和MS 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技术堆栈绝对是推荐的方法。 :)