day07mixin的增删改查

pip install -r requirement.txt

djangorestframework
django-filter

app/urls.py

from rest_framework.routers import SimpleRouter

#获取路由
router = SimpleRouter()
# 注册资源, /app/article/   /app/article/id/
router.register('article', ArticleView)





# 新增路由地址
urlpatterns += router.urls

#app/views.py

class ArticleView(viewsets.GenericViewSet,
mixins.ListModelMixin,
mixins.RetrieveModelMixin,
mixins.DestroyModelMixin,
mixins.CreateModelMixin,
mixins.UpdateModelMixin):
# 获取资源所对应的数据信息
queryset = Article.objects.all()
# 序列化
serializer_class = ArticleSerializer

def list(self, request, *args, **kwargs):
    queryset = self.get_queryset()
    # 将对象转化成json
    a = self.get_serializer(queryset, many=True)
    # a = [{'id': i.id, 'title':i.title} for i in queryset]
    # b = []
    # for i in queryset:
    #     data = {
    #         'id': i.id,
    #         'title': i.title
    #     }
    #     b.append(data)
    return Response(a.data)

def retrieve(self, request, *args, **kwargs):
    # 获取主键所对应的对象信息
    instance = self.get_object()
    # 序列化
    serializer = self.get_serializer(instance)
    return Response(serializer.data)

def perform_destroy(self, instance):
    # 实现软删除
    instance.is_delete = 1
    instance.save()
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容