DRF-02
开始一个DRF小demo;
DRF 是基于Django实现的,直接利用Django环境进行创建。
环境安装和配置:
- 1 安装DRF:
pip install djangorestframework
- 2 在项目setting文件内的install_apps列表内增加rest_framework应用.
INSTALLED_APPS = [
...
'rest_framework',
]
- 3 新建序列化器
应用中新建serializers.py文件;
文件内创建模型序列化器类用于序列化和反序列化。
class XxxxSerializer(serializers.ModelSerializer):
"""
xxx数据序列化器
"""
class Meta:
model = BookInfo
fields = '__all__'
注意:
1 必须继承ModelSerializer类
2 model 指定序列化器处理的模型类
3 fields 指明处理的字段(__all__表示所有字段)
- 4 重写视图
在应用的views.py文件内重写视图类;
class XxxxViewSet(ModelViewSet):
queryset = Xxxx.objects.all()
serializer_class = XxxxSerializer
注意:
1 必须继承ModelViewSet类;
2 Xxxx模型类查询返回的查询集QuerySet就是查询数据时使用的查询集;
3 serialzer_class 指明视图进行序列化和反序列化处理时使用的序列化器类。
- 5 定义路由
在应用的urls.py文件中定义路由信息
router = DefaultRouter() # 可以处理视图的路由器
router.register(r'demo', views.XxxxViewSet) # 向路由器中注册视图集
urlpatterns += router.urls # 将路由器中的所以路由信息追到到django的路由列表中
- 6 启动项目
在浏览器中输入网址可以看到APIweb页面。功能强的不行。这个页面多看看,功能挺多的。