Django Rest Framework组织ViewSets和路由器

时间:2014-11-25 14:44:27

标签: python django django-rest-framework

您好,我的问题可能是在Django Rest Framework中组织ViewSets和相应的路由器时的最佳实践。

根据官方文档,路由器应存储在urls.py中,并且视图集应存储在views.py中。

我对方法的想法是将视图集放在一个单独的文件中,例如viewsets.py,这样我们就不会在同一个文件中混合普通的Django视图和DRF视图集,从而提高了可读性。

路由器也是如此,我们会在每个应用程序中创建一个名为routers的文件,然后在主要的默认路由器实例中注册。

这些是我的想法,但我不确定如何:

1º以正确的方式执行此操作(注册视图集路由器以及所有,如果我将DefaultROuter放在__init__.py中?)

2º有更好的方法吗?

基本上我想用django视图和DRf视图分隔每个应用程序和每个应用程序内部的逻辑

1 个答案:

答案 0 :(得分:3)

为了它的价值,我总是在我的Django应用程序中创建一个单独的api /子目录来保存所有与Django REST Framework相关的文件。这只是一种做事方式,但它有助于在我们的应用程序中保持关注点分离。

层次结构看起来像这样......

  • Django项目/
    • Django App /
      • views.py
      • models.py
      • urls.py
      • API /
        • serializers.py
        • viewsets.py