我是completing my first database project,旨在建立一个简单的讨论网站。
answers which I got at Superuser告诉我,在没有任何其他工具的情况下,Python很难用于构建数据库webapp。
您会使用哪些其他工具?
答案 0 :(得分:5)
对不起,你的问题毫无意义。
你说你不能使用Django因为你必须自己编写SQL查询。首先,你为什么要这样做?其次,Django肯定不会阻止你。
即使你说你想自己编写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.db
。 See this article for examples
如果您还想使用框架,那么除了Django之外还有其他选择:
有关更多框架的列表,请参阅this list。
现在,如果您不想使用ORM并且只想直接进行SQL调用,Python也可以与数据库进行交互。请参阅this page on the Python wiki。