python – Web框架的限制

栏目: Python · 发布时间: 6年前

内容简介:Web框架倾向于围绕构建网站进行优化,使大多数正常用例更容易实现.一旦你开始用框架做更多“开箱即用”的东西,你可能会发现你花更多的时间在它周围工作然后你首先使用它来保存它.这里很难概括(特别是因为我真的只和Django一起工作过),所以我会根据自己使用Django开发JSON API的经验提供一些建议:简单来说,我不建议使用Django编写REST API.根据我自己的经验,我真的没有找到任何值得写回家的东西.我不需要Django的模板系统,所以我真正使用的是URL调度和ORM.即便如此,我还是必须做一些黑
这是一个关于如何限制Web开发框架(如Django和 ruby

-on-rails)的一般性问题.

我打算构建一个RESTful Web服务,它将具有纯粹的JSON / XML接口,没有GUI.该服务将依赖于数据库,但是对于一些更重要的操作,没有明确的方法将“模型”对象直接保存到数据库表中.此外,我需要完全控制何时以及如何将数据写入数据库.我将需要维护多个数据库连接,以便仅将某些连接用于读取,而将其他连接仅用于写入.

我已经看过了“完整的”MVC框架,比如Django和更基本的框架,比如web.py和pylons.我现在的印象是,如果我最初使用完整的框架,事情会变得更快,但最终我会陷入困境,因为我会受到框架的限制.如果我使用更基本的框架,将一切运行所需的时间会更长,但我可以自由地做我需要的事情.

这就是它的样子,但我怀疑,鉴于有多少网站是用Django和Rails编写的,这可能是一个错误的印象.你能否提出你的意见?我完全错了,有一种方法可以轻松地使用像Django或Rails这样的框架做任何事情,或者根据我的要求,我应该使用像web.py这样的东西?

谢谢!

Web框架倾向于围绕构建网站进行优化,使大多数正常用例更容易实现.一旦你开始用框架做更多“开箱即用”的东西,你可能会发现你花更多的时间在它周围工作然后你首先使用它来保存它.

这里很难概括(特别是因为我真的只和Django一起工作过),所以我会根据自己使用Django开发JSON API的经验提供一些建议:

简单来说,我不建议使用Django编写REST API.根据我自己的经验,我真的没有找到任何值得写回家的东西.我不需要Django的模板系统,所以我真正使用的是URL调度和ORM.即便如此,我还是必须做一些黑客才能让URL调度员做我想做的事情 – 如果我没有使用其他功能,事实上使用不同的URL系统会更快.在你的情况下,Django的ORM甚至不适用,因为它不支持多个数据库(除非你使用的是1.2 alpha …).由于Django缺乏良好的启动信号,Django开始看起来非常糟糕.

如果我在你的鞋子里,我会去寻找能够做我需要的特定库(ORM,WSGI等)而只是使用它们,而不是试图弯曲和锤击Django以满足我的需求.

在完全不同的说明中,您可能希望将 Tornado 视为可能的HTTP前端.它既简单又快速.

翻译自:https://stackoverflow.com/questions/2125865/how-limiting-are-web-frameworks


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

领域驱动设计

领域驱动设计

[美] Eric Evans / 赵俐、盛海艳、刘霞 / 人民邮电出版社 / 2016-6-1 / 69

本书是领域驱动设计方面的经典之作,修订版更是对之前出版的中文版进行了全面的修订和完善。 全书围绕着设计和开发实践,结合若干真实的项目案例,向读者阐述如何在真实的软件开发中应用领域驱动设计。书中给出了领域驱动设计的系统化方法,并将人们普遍接受的一些实践综合到一起,融入了作者的见解和经验,展现了一些可扩展的设计新实践、已验证过的技术以及便于应对复杂领域的软件项目开发的基本原则。一起来看看 《领域驱动设计》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具