【问题标题】:Is django-piston mature enough?django-piston 是否足够成熟?
【发布时间】:2011-04-14 17:38:24
【问题描述】:

我正在开发一个广告网站,并希望使用网络服务来处理请求。我的意思是,发布者网站会放置一个 JavaScript sn-p,它会通过 REST GET 拉出横幅。

django-piston 框架是否成熟到足以实现此功能?

【问题讨论】:

  • Django——就其本身而言——很好。添加活塞是可选的。它可以为您节省一些工作。由于 Django 很成熟,活塞是可选的,所以很难提供答案。此外,我们不知道“足够成熟”有多成熟。我对“足够成熟”的看法可能与您不同。
  • @S.Lott 感谢您的回答。尽管“成熟”对我们来说听起来可能不同,但每个人都有一些共同的方面。喜欢:有据可查、经过充分测试、没有漏洞等。可扩展性可能是讨论中要考虑的其他内容。
  • @santiagobasulto:“每个人都有某些共同的方面”不是真的。经过30年的咨询,我发现没有什么是共同的。我一再对假设而不是陈述的事情感到惊讶。 “没有窃听”是什么意思?
  • 没有窃听意味着不受电子监控。我相信这是共识。再想想,可能不是。
  • @S.Lott 没有窃听我的意思是它没有已知的问题。比如“如果你在 IIS 中部署它会崩溃”等等。

标签: python django web-services rest django-piston


【解决方案1】:

我一直在寻找“最佳”的 Django REST 包,发现这张表很有用:

http://www.djangopackages.com/grids/g/api/

此时(2011 年年中)Django-Tastypie 在作者数量、更新的代码库、文档和整体活动方面无疑是赢家。

编辑,2012 年 1 月:我认为两个主要竞争者现在是 Django-Tastypie,还有 Django-REST-framework。后者有一个非常有用的 Web 可浏览 API 功能,我还没有在其他包中看到。

【讨论】:

    【解决方案2】:

    我目前正在使用它,它足以满足我的需求,这非常简单(主要是为模型数据设置只读 API 的一种简单方法)。我确实有一些批评:

    1. 代码的创建者 jespern 似乎并没有对issues posted to bitbucket 做出太多回应。可能是不公平的批评,以及django-piston Google Group 中的活动。发布问题并遇到零响应仍然令人沮丧。

    2. 编码中似乎存在一些不一致或错误。例如,我发布的this issue。 (我可能会在小组中进一步研究)。

    【讨论】:

    • 这就是我的意思!!!这是一个大问题。我的意思是,开始一些不够活跃的东西不是一个好主意!
    • 我完全同意你的观点,乔丹。我一直在尝试决定是否在我正在从事的项目中使用 Piston 或 Tastypie,虽然我更喜欢 Tastypie,但它缺少一些我想要拥有的功能(例如访问请求以便对象来自资源方法)。那是我开始考虑活塞的地方,但该项目的活动似乎正在减少。真是可惜了。
    【解决方案3】:

    我无法回答“它是否足够成熟”。我们仍在自行评估我们的选择。

    但是,您可能想查看以下内容:

    【讨论】:

      【解决方案4】:

      Django 已经足够成熟了。它正在为十几个备受瞩目的生产站点提供动力。另一方面,我不知道活塞,除了 bitbucket.org。我不知道任何其他使用它的“高调”网站。听起来您不需要一个基于 Django 的复杂框架来处理 REST。您可以在 Django 之上轻松实现 RESTful 服务,而无需使用任何其他特定库。

      【讨论】:

      • 我不同意,编写自己的 RESTful 服务可能会很痛苦,尤其是在您有很多模型的情况下。 django-piston 可能不是最佳选择,但使用某种 REST 框架也可以让您不必为每个模型编写案例。您基本上只需为每个模型创建一个简单的 Handler 对象,然后框架会处理其余部分。
      • @Jordan 没错,如果您有许多通过 REST 公开的模型。 OP 的案例听起来像是他有一个带有 PUT/POST 和 GET 方法的广告模型。这就是为什么听起来他不需要为 REST 设置另一个库的原因。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-13
      相关资源
      最近更新 更多