【问题标题】:What are the differences between Generics, Views, Viewsets and Mixins in Django?Django 中的泛型、视图、视图集和 Mixins 有什么区别?
【发布时间】:2018-07-08 11:33:08
【问题描述】:

我是 Django 和 Django-Rest 的新手。我对什么时候应该使用这些感到困惑?它们的优点和缺点是什么?我只看过这个- http://www.cdrf.co

我唯一知道的是有很多方法可以做一件事。但这对我来说完全不清楚。

【问题讨论】:

    标签: python django django-rest-framework views difference


    【解决方案1】:

    在 Django 中,我们经常在项目中出于不同目的使用这四个术语。我试图收集和分享每个术语详细描述的链接的实际含义。请检查您是否觉得这些有帮助。

    通用视图:

    “Django 的通用视图...被开发为常见使用模式的快捷方式...它们采用视图开发中发现的某些常见习语和模式并将它们抽象化,以便您可以快速编写数据的通用视图而无需重复你自己。” ——Django Documentation

    Read more details

    观看次数:

    视图函数,或简称视图,只是一个接受 Web 请求并返回 Web 响应的 Python 函数。此响应可以是网页的 HTML 内容、重定向、404 错误、XML 文档或图像。 . .或任何东西,真的。视图本身包含返回该响应所需的任意逻辑。只要它在 Python 路径上,这段代码就可以放在你想要的任何地方。没有其他要求——可以这么说,没有“魔法”。为了将代码放在某处,惯例是将视图放在名为 views.py 的文件中,该文件位于您的项目或应用程序目录中。

    Read more details

    视图集:

    Django REST 框架允许您将一组相关视图的逻辑组合在一个名为 ViewSet 的类中。在其他框架中,您可能还会发现在概念上类似的实现,命名为“资源”或“控制器”。 ViewSet 类只是一种基于类的 View,它不提供任何方法处理程序,例如 .get() 或 .post(),而是提供诸如 .list() 和 .create() 之类的操作。

    ViewSet 的方法处理程序仅在使用 .as_view() 方法完成视图时绑定到相应的操作。

    Read more details

    混合:

    mixin 类提供用于提供基本视图行为的操作。请注意,mixin 类提供操作方法,而不是直接定义处理程序方法,例如 .get() 和 .post()。这允许更灵活的行为组合。 可以从 rest_framework.mixins 导入 mixin 类。

    Read more details

    【讨论】:

      猜你喜欢
      • 2019-08-29
      • 1970-01-01
      • 2012-09-15
      • 2010-09-10
      • 2017-03-18
      • 2011-01-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多