如何正确的使用Restful_framework视图组件-创新互联

这篇文章给大家介绍如何正确的使用Restful_framework视图组件,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

创新互联公司-专业网站定制、快速模板网站建设、高性价比泰和网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式泰和网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖泰和地区。费用合理售后完善,十年实体公司更值得信赖。

一、基本视图


写一个出版社的增删查改resful接口

要自己事先创建好django项目,并创建好表,添加完记录

路由:

url(r'^publish/$', views.PublishView.as_view()),
url(r'^publish/(?P\d+)/$', views.PublishDetailView.as_view()),


视图:


from api import modelsfrom rest_framework import serializersfrom rest_framework.response import Responsefrom rest_framework.views import APIView
class PublishSerializers(serializers.ModelSerializer):
  class Meta:
    model=models.Publish
    fields='__all__'

class PublishView(APIView):
  #查询出版社表中所有记录
  def get(self, request):
    publish_list = models.Publish.objects.all()
    bs = PublishSerializers(publish_list, many=True)
    # 序列化数据

    return Response(bs.data)  #返回的结果是列表中套字典
  
  def post(self, request):
    # 添加一条数据
    print(request.data)

    bs=PublishSerializers(data=request.data)
    if bs.is_valid():
      bs.save() # 生成记录
      return Response(bs.data)  #返回的是添加成功记录的字典
    else:

      return Response(bs.errors)

class PublishDetailView(APIView):   #查询某一条数据
  def get(self,request,pk):
    publish_obj=models.Publish.objects.filter(pk=pk).first()
    bs=PublishSerializers(publish_obj,many=False)
    return Response(bs.data)   #更新某一条数据
  def put(self,request,pk):
    publish_obj = models.Publish.objects.filter(pk=pk).first()

    bs=PublishSerializers(data=request.data,instance=publish_obj)
    if bs.is_valid():
      bs.save() # update
      return Response(bs.data)
    else:
      return Response(bs.errors)   #删除某一条数据
  def delete(self,request,pk):
    models.Publish.objects.filter(pk=pk).delete()

    return Response("")

网站题目:如何正确的使用Restful_framework视图组件-创新互联
浏览地址:http://bzwzjz.com/article/pspoj.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 网站制作报价 成都网站制作 成都商城网站建设 重庆网站设计 企业网站建设公司 达州网站设计 成都网站建设 成都网站建设 手机网站建设 成都网站制作 成都网站设计 营销型网站建设 四川成都网站制作 成都网站建设 网站设计 响应式网站设计 重庆网站制作 定制网站建设 成都网站建设公司 成都响应式网站建设公司 营销网站建设 高端网站建设