用于构建数据库支持的webapp的python工具

时间:2009-07-26 18:47:10

标签: python orm cheetah

我是completing my first database project,旨在建立一个简单的讨论网站。

answers which I got at Superuser告诉我,在没有任何其他工具的情况下,Python很难用于构建数据库webapp。

您会使用哪些其他工具?

5 个答案:

答案 0 :(得分:5)

对不起,你的问题毫无意义。

  1. 你说你不能使用Django因为你必须自己编写SQL查询。首先,你为什么要这样做?其次,Django肯定不会阻止你。

  2. 即使你说你想自己编写SQL查询,然后你也会问ORM是最好的。 ORM取代了编写SQL的需要,这就是重点。如果由于这个原因你不能使用Django,SQLAlchemy将无济于事。

答案 1 :(得分:2)

很多人会推荐SQLAlchemy

答案 2 :(得分:2)

你的问题很奇怪。

首先,Django不会强迫您使用它的SQL抽象。 Django的每个部分都可以独立于其他部分使用。您可以将Django与任何其他SQL库一起使用。

其次,如果您需要构建自己的SQL查询,ORM就是您需要的相反

答案 3 :(得分:1)

ORM与模板不同。既然你想编写自己的sql查询并同时想编写干净的python代码,我建议你看看web.py。我已经使用过web.py而且我必须说它非常简单而且重要。它有自己的模板引擎,但你也可以使用另一个。

如果你想使用ORM,你可以使用SQLAlchemy或SQLObject,它们似乎很受欢迎。

答案 4 :(得分:1)

除了Django之外还有许多其他选项。但是:

您可以在Django中创建自己的SQL查询Here is the documentation for extra()extra()允许您在ORM之上进行额外的SQL调用。

如果要进行原始SQL查询,完全绕过ORM,可以使用django.dbSee this article for examples

如果您还想使用框架,那么除了Django之外还有其他选择:

  • 的TurboGears
  • 的web2py
  • Zope3
  • 的Plone / Zop2

有关更多框架的列表,请参阅this list

现在,如果您不想使用ORM并且只想直接进行SQL调用,Python也可以与数据库进行交互。请参阅this page on the Python wiki