zoukankan      html  css  js  c++  java
  • 二维码生成,热点推荐,获取表的所有字段名

    def qr_code_img(request):
        '''办税指南二维码'''
        face_id = request.session.get("userfaceid")
        print(face_id)
        user_to = request.POST.get('id')
        abs_url = request.build_absolute_uri()
        url_root = abs_url.split('/con')[0]
        qrcode_url = os.path.join(url_root, f'media/answer/{id}.html')
        print(qrcode_url)
        img = qrcode.make(qrcode_url)
        buf = BytesIO()  # 创建一个BytesIO临时保存生成图片数据
        img.save(buf)  # 将图片字节数据放到BytesIO临时保存
        image_stream = buf.getvalue()  # 在BytesIO临时保存拿出数据
        response = HttpResponse(image_stream, content_type="image/jpg")  # 将二维码数据返回到页面
        return response

    -----

    def news(request):
        ''' 税务资讯接口 '''
        if request.method == 'POST':
            sql = "SELECT * FROM news"
            txt = pd.read_sql(sql, connection)
            txt["date0"] = pd.to_datetime(txt['date']).apply(lambda x: str(x)[:10])
            txt = txt.sort_values(by="date0", ascending=False)[:6]
            news_id = txt["id"].tolist()
            # news_time = txt["date0"].tolist()
            news_title = txt["title"].tolist()
            news_content = txt["content"].tolist()
            news_img = txt["img_url"].tolist()
            news_data = zip(news_id, news_title, news_content, news_img)
            news_data = list(news_data)
            abs_url = request.build_absolute_uri()
            url_root = abs_url.split('/con')[0]
            img_root = os.path.join(url_root, 'media/')
            result = {'code': 200, 'message': '热门搜索', 'data': {'news': []}}
            for new in news_data:
                if new[-1]:
                    img_path = os.path.join(img_root, new[-1])
                else:
                    img_path = None
                result['data']['news'].append(
                    {'id': new[0], 'title': new[1], 'content': new[2], 'img': img_path}
                )
            return HttpResponse(json.dumps(result))

    -------

    all

    def recommends(request):
        ''' 返回热门关键字,热门搜索问答 '''
        # username = request.session.get("username")
        # userfaceid = request.session.get("userfaceid")
        # tourist_bool = False
        #流量+1
        visit_time = datetime.now()
        visit_count = VisitCount.objects.all()
        if visit_count:
            print('not first')
            visit_count[0].visit_count += 1
            visit_count[0].add_time = visit_time
            visit_count[0].save()
        else:
            print('first')
            VisitCount.objects.create(visit_count=1, add_time=visit_time)
        # add_one_sql = "UPDATE consult_visitcount SET visit_count=visit_count+1,add_time='%s'"%visit_time
        # add_one_cursor = connection.cursor()
        # add_one_cursor.execute(add_one_sql)
        # hot search key
        start_time = time.time()
        select_sql = 'select * from recommend_key'
        datas = pd.read_sql(select_sql, connection)  # <pandas.core.frame.DataFrame'>
        temp = datas.iloc[:, 1:-1]  # 取出所有数据的 除了前两个字段
        tp = temp.sum(axis=0)  # 所有字段纵向相加
        top_sorts = tp.sort_values(ascending=False)  # 降序排序
        top3 = top_sorts.index[:4]
        top_recommends = top3.values.tolist()
        result = {'code': 200, 'message': '热门搜索', 'data': {'hot': top_recommends}}
        # news
        # sql = "SELECT * FROM news"
        # txt = pd.read_sql(sql, connection)
        # txt["date0"] = pd.to_datetime(txt['date']).apply(lambda x: str(x)[:10])
        # txt = txt.sort_values(by="date0", ascending=False)
        # news_id = txt["id"].tolist()
        # # news_time = txt["date0"].tolist()
        # news_title = txt["title"].tolist()
        # # news_content = txt["content"].tolist()
        # news_img = txt["img_url"].tolist()
        # news_data = zip(news_id, news_title, news_img)
        # news_data = list(news_data)
        # result['data'].update({'news': []})
        # abs_url = request.build_absolute_uri()
        # url_root = abs_url.split('/con')[0]
        # img_root = os.path.join(url_root, 'media/news/source/')
        # for new in news_data:
        #     if new[-1]:
        #         img_path = os.path.join(img_root, new[-1])
        #     else:
        #         img_path = None
        #     result['data']['news'].append(
        #         {'id': new[0], 'title': new[1], 'img': img_path}
        #     )
        # 热搜榜
        hot_part = AsksAnswer.objects.values("id", "part", "class4", "answer", "clicked_num").order_by('-clicked_num')[:5]
        result['data'].update({'hot_part': []})
        for hot in hot_part:
            # result['data']['hot_part'].append(
            #     {'id': hot['id'], 'part': hot['part'], 'title': hot['class4'], 'answer': hot['answer']}
            # )
            result['data']['hot_part'].append(
                {'title': hot['class4']}
            )
        print(f'end time: {time.time()-start_time}')
        return HttpResponse(json.dumps(result))

     --字段名--

    from django.apps import apps
    modelobj = apps.get_model('consult', 'RecommendKey')
            
    fileds
    = modelobj._meta.fields
    fileds_name
    = [f.name for f in fileds if f.name == search_key]
  • 相关阅读:
    武器排序HDU3293:sort
    sata硬盘id
    root sysroot chroot rootfs解析
    软件版本周期
    shell字符串的截取的问题
    游戏脚本
    udevadm使用
    vfat linux 大小写问题
    vmware 虚拟机性能优化
    日期被修改
  • 原文地址:https://www.cnblogs.com/tangpg/p/9944669.html
Copyright © 2011-2022 走看看