0

我是 Django 的新手,我正在寻找一种方法来使基于类的视图通过类中的几种方法响应 GET、POST、PUT、DELETE。例如

  • 索引#GET
  • 显示#GET
  • 新#GET
  • 编辑#GET
  • 创建#POST
  • 更新#PUT
  • 删除#DELETE

我的主要原因是将我的代码组织在一个类中。目前我正在使用一个类来处理新的和创建操作,另一个来处理编辑和更新操作。这感觉有点笨拙。

我使用过 Spring、Symfony、Rails,它们都提供了一种简单的方法来做到这一点。Django 似乎有很多选项(tastypie,rest-framework),但我看不到任何支持这一点的选项。有没有办法支持这一点?

提前致谢。

4

1 回答 1

0

我并不完全肯定,但我认为您将 REST 术语与“在单个类中处理不同类型的请求”混为一谈。rest-framework 和 Tastypie 将启用资源定义、序列化和反序列化、django 模型之间的管道、资源的标准化 API。

另一方面,仅使用基于 django 类的视图,您可以获得所需的内容:在由 X、Y、Z 混合组成的单个类中回答不同类型的请求,并将单个 URL 指向它,但这并没有t使其完全“休息”。

使用单个 CBV 似乎是个好主意,但请记住,随着视图变得越来越复杂,最初的笨拙肯定会以更耦合的方式重新出现。

编辑:也许django-extra-views可以在某种程度上帮助你。

于 2013-03-30T18:45:30.287 回答