zoukankan      html  css  js  c++  java
  • 深科技

    #####################################

    from api import models
    from utils.response_dict import BaseResponse
    from django.shortcuts import render
    from rest_framework.views import APIView
    from rest_framework.response import Response
    from rest_framework.viewsets import GenericViewSet, ViewSetMixin
    from api.serializers.serialize_article import ArticleSerializers, ArticleDetailSerializers
    from api.views.auth import YcAuth
    
    
    class DeepNews(ViewSetMixin, APIView):
        authentication_classes = [YcAuth,]
    
        def list(self, request, *args, **kwargs):
            """
            推文列表内容
            :param request:
            :param args:
            :param kwargs:
            :return:
            """
            ret = BaseResponse()
            try:
                article_list = models.Article.objects.all()
                serialized_art_list = ArticleSerializers(instance=article_list, many=True)
                ret.data = serialized_art_list.data
            except Exception as e:
                ret.code = 1001
                ret.error = '未获取到资源'
            return Response(ret.dict)
    
        def retrieve(self, request, *args, **kwargs):
            ret = BaseResponse()
            try:
                pk = kwargs.get('pk')
                obj = models.Article.objects.filter(pk=pk).first()
                ser = ArticleDetailSerializers(instance=obj, many=False)
                ret.data = ser.data
            except Exception as e:
                ret.data = 1001
                ret.error = '未获取到资源'
            return Response(ret.dict)

    ############################################

    from rest_framework import serializers
    from api.models import Article
    
    
    class ArticleSerializers(serializers.ModelSerializer):
        """
        Article表的序列化
        """
        source = serializers.CharField(source="source.name")
        article_type = serializers.CharField(source="get_article_type_display")
        position = serializers.CharField(source='get_position_display')
    
        class Meta:
            model = Article
            fields = ["title", "source", "article_type", 'head_img', 'brief', 'pub_date', 'comment_num', 'agree_num',
                      'view_num', 'collect_num', 'position']
    
    
    class ArticleDetailSerializers(serializers.ModelSerializer):
        """
        ArticleDetail表的序列化
        """
        class Meta:
            model = Article
            fields = ['title', 'pub_date', 'agree_num', 'view_num', 'collect_num', 'comment_num', 'source', 'content',
                      'head_img']

    #############################################

    #############################################

    #############################################

  • 相关阅读:
    postgresql大批量数据导入方法
    Odoo 的库存管理与OpenERP之前的版本有了很大的不同,解读Odoo新的WMS模块中的新特性
    一招解决OpenERP8.0安装旧版模块报错
    window下python 扩展库安装 使用第三方镜像源
    OpenERP 安装在Windows server上时间显示不对的解决办法
    深入理解OpenERP的工作流(Workflow)
    Need to add a caption to a jpg, python can't find the image
    OE中admin的内置帐号
    [Linux] Git: 基本使用
    ubuntu下实现openerp 7使用nginx反正代理及绑定域名
  • 原文地址:https://www.cnblogs.com/andy0816/p/12495585.html
Copyright © 2011-2022 走看看