首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Django进阶篇 Rest framework (八)

Django进阶篇 Rest framework (七)

理解 django rest framework,需要先理解面向对象。子类继承父类属性和方法,而在基类中往往以定义抽象接口的形式,强制使子类重写抽象接口。不过抽象接口往往是框架的开发者做,而不是自己需要做。

实例化的对象可以调用类的属性和方法,其实方法也可以看作是一种属性。子类定义或者重写父类的属性,实例化的对象可以调用父类中的方法查询到子类的属性,就是说实例化的对象集所有父类子类于一身。

子类中的方法或者属性会覆盖掉父类中的方法和属性,实例化对象调用的时候不会管父类中怎么样,所以在变量和方法命名的时候应该注意,或者也可以使用 super 等操作。

而在 django rest framework 中,对原生 request 做了封装。原本可以在视图类中进行的,比如访问限流,用户认证,权限管理等逻辑,封装到一个一个类的方法中,根据返回值判断是否满足认证,权限等功能。如果不通过则不会进入到视图类执行下一步,并返回相应的提示信息。这样分开的好处是最大程度的解耦,各个相关功能相互不影响,又相互关联,维护性更高。

下一篇
举报
领券