Exemple #1
0
def home(request):
    blg_content_type = ContentType.objects.get_for_model(Blog)
    dates, read_nums = get_seven_days_read_date(blg_content_type)
    context = {}
    context['read_nums'] = read_nums
    context['dates'] = dates
    return render(request, 'home.html', context)
Exemple #2
0
def home(request):
    content={}
    get_hot_for_7_days_data =cache.get('get_hot_for_7_days_data')
    if get_hot_for_7_days_data is None:
        get_hot_for_7_days_data=get_hot_for_7_days()
        cache.set('get_hot_for_7_days_data',get_hot_for_7_days_data,3600)
    ct = ContentType.objects.get_for_model(Blog)
    read_nums,date_nums=get_seven_days_read_date(content_type=ct)
    read_details=get_hot_read_date(ct)
    content['read_details']=read_details
    content['read_nums']=read_nums
    content['date_nums'] = date_nums
    content['get_hot_for_7_days']=get_hot_for_7_days_data
    return render(request,'home.html',content)
Exemple #3
0
def index(request):
    ct = ContentType.objects.get_for_model(Blog)
    dates, read_nums = get_seven_days_read_date(ct)
    today_hot_blogs = get_today_hot_date(ct)
    yesterday_hot_blogs = get_yesterday_hot_date(ct)
    seven_hot_blogs = get_seven_days_hot_date(ct)
    content = {
        'dates': dates,
        'read_nums': read_nums,
        'today_hot_blogs': today_hot_blogs,
        'yesterday_hot_blogs': yesterday_hot_blogs,
        'seven_hot_blogs': seven_hot_blogs
    }
    return render(request, 'index.html', content)
Exemple #4
0
def home(request):
    blog_content_type = ContentType.objects.get_for_model(Blog)
    dates, read_nums = get_seven_days_read_date(blog_content_type)
    #获取缓存
    hot_blogs_for_7_days = cache.get('hot_blogs_for_7_days')
    if hot_blogs_for_7_days is None:
        hot_blogs_for_7_days = get_7_days_hot_blogs()
        cache.set('hot_blogs_for_7_days', hot_blogs_for_7_days, 3600)

    context = {}
    context['dates'] = dates
    context['read_nums'] = read_nums
    context['today_hot_data'] = get_today_hot_data(blog_content_type)
    context['yesterday_hot_data'] = get_yesterday_hot_data(blog_content_type)
    context['hot_blogs_for_7_days'] = hot_blogs_for_7_days
    return render(request, 'home.html', context)
Exemple #5
0
def index(request):
    # 获取七天热门博客的缓存数据
    get_seven_day_all = cache.get("get_seven_day_all", 'expired')
    if get_seven_day_all == "expired":
        get_seven_day_all = get_seven_day_hot_data()
        cache.set("get_seven_day_all", get_seven_day_all, 3600)
        print("无缓存")
    else:
        print("有缓存")

    blog_content_type = ContentType.objects.get_for_model(Blog)
    result_all, date_all = get_seven_days_read_date(blog_content_type)
    result_hot_today_all = get_today_hot_data(blog_content_type)
    result_hot_ysetday_all = get_ysetday_hot_data(blog_content_type)
    get_seven_day_all = get_seven_day_hot_data()
    return render(request, "index.html", locals())
Exemple #6
0
def home(request):
    blog_content_type = ContentType.objects.get_for_model(Blog) # 获得关联到Blog类型的 ContentType实例
    dates,read_nums = get_seven_days_read_date(blog_content_type)    # 获得前七天博客阅读的list

    # 获取7天热门博客的缓存数据
    hot_blogs_for_7_days = cache.get('hot_blogs_for_7_days')
    if hot_blogs_for_7_days is None:   # 如果获取不到 那么 得到None 需要重新计算
        hot_blogs_for_7_days = get_7_days_hot_blogs()
        cache.set('hot_blogs_for_7_days',hot_blogs_for_7_days,3) # 存放缓存  先是一个字典  然后是有效期(以s为单位)

    context={}
    context['read_nums'] = read_nums
    context['dates'] = dates
    context['today_hot_data'] = get_today_hot_data(blog_content_type) # 获取今天热门博客
    context['yesterday_hot_data'] = get_yesterday_hot_data(blog_content_type) # 获取昨天热门博客
    context['hot_blogs_for_7_days'] = hot_blogs_for_7_days # 获取7日内热门博客  已经按7天内阅读数之和排序
    return render( request,'home.html',context)
Exemple #7
0
def home(request):
    blog_content_type = ContentType.objects.get_for_model(Blog)
    dates, read_nums = get_seven_days_read_date(blog_content_type)
    #获取7天热门数据 缓存策略
    all_7_hot_data = cache.get('all_7_hot_data')
    if all_7_hot_data is None:
        all_7_hot_data = get_7_days_hot_blogs()
        cache.set('all_7_hot_data', all_7_hot_data, 60 * 60 * 2)
        #print('缓存?')

    context = {}
    context['read_nums'] = read_nums
    context['dates'] = dates
    context['today_hot_data'] = get_today_hot_data(blog_content_type)
    context['yesterday_hot_data'] = get_yesterday_hot_data(blog_content_type)
    context['all_7_hot_data'] = all_7_hot_data
    return render(request, 'home.html', context)
Exemple #8
0
def home(request):
    blog_content_type=ContentType.objects.get_for_model(Blog)
    read_seven_num,dates=get_seven_days_read_date(blog_content_type)
    hot_data_for_7days=cache.get('hot_data_for_7days')
    if hot_data_for_7days is None:
        hot_data_for_7days = get_7days_hot_data()
        cache.set('hot_data_for_7days',hot_data_for_7days,3600)
    hot_data_for_yesterday=cache.get('hot_data_for_yesterday')
    if hot_data_for_yesterday is None:
        hot_data_for_yesterday=get_yesterday_hot_data(blog_content_type)
        cache.set('hot_data_for_yesterday', hot_data_for_yesterday, 3600)
    context={}
    context['read_seven_num']=read_seven_num
    context['dates']=dates
    context['read_today_hot'] = get_today_hot_data(blog_content_type)
    context['read_yesterday_hot'] = hot_data_for_yesterday
    context['hot_data_for_7days'] =  hot_data_for_7days 
    return render(request,'home.html',context)
Exemple #9
0
def home(request):
    blog_content_type = ContentType.objects.get_for_model(Blog)
    dates, read_nums = get_seven_days_read_date(blog_content_type)

    # 获取7天热门博客的缓存是数据
    hot_blogs_7_days = cache.get('hot_blogs_7_days')
    if hot_blogs_7_days is None:
        hot_blogs_7_days = get_7_days_hot_blogs()
        cache.set('hot_blogs_7_days', hot_blogs_7_days, 3600)
    #     print('calc')
    # else:
    #     print('use cache')
    context = {}
    context['dates'] = dates
    context['read_nums'] = read_nums
    context['today_hot_data'] = get_tody_hot_data(blog_content_type)
    context['yesterday_hot_data'] = get_yesterday_hot_data(blog_content_type)
    context['hot_blogs_7_days'] = get_7_days_hot_blogs()
    return render(request, 'home.html', context)
Exemple #10
0
def home(request):
    blog_content_type = ContentType.objects.get_for_model(Blog)
    dates, read_nums = get_seven_days_read_date(blog_content_type)
    today_hot_data = get_today_hot_data(blog_content_type)
    yesterday_hot_data = get_yesterday_hot_data(blog_content_type)

    # 获取7天热门博客缓存数据,
    hot_blogs_for_7_days = cache.get('hot_blogs_for_7_days')
    if hot_blogs_for_7_days is None:
        # 没有缓存则写入
        hot_blogs_for_7_days = get_7_days_hot_blogs()
        cache.set('hot_blogs_for_7_days', hot_blogs_for_7_days, 3600)
    else:
        print('use cache')
    content = {
        'read_nums': read_nums,
        'dates': dates,
        'today_hot_data': today_hot_data,
        'yesterday_hot_data': yesterday_hot_data,
        'hot_blogs_for_7_days': hot_blogs_for_7_days,
    }
    return render(request, 'home.html', content)
Exemple #11
0
def home(request):
    blog_content_type = ContentType.objects.get_for_model(Blog)
    dates, read_nums = get_seven_days_read_date(blog_content_type)
    blog_nums = Blog.objects.count()
    view_nums = ReadNum.objects.aggregate(Sum('read_num'))['read_num__sum']
    #获取7天热门博客缓存
    hot_blogs_for_7_days = cache.get('hot_blogs_for_7_days')
    if hot_blogs_for_7_days is None:
        hot_blogs_for_7_days = get_7_days_hot_blogs()
        cache.set('hot_blogs_for_7_days', hot_blogs_for_7_days, 3600)
        print('calc')
    else:
        print('use')

    context = {}
    context['dates'] = dates
    context['blog_nums'] = blog_nums
    context['view_nums'] = view_nums
    context['read_nums'] = read_nums
    context['today_hot_data'] = get_today_hot_data(blog_content_type)
    context['yesterday_hot_data'] = get_yesterday_hot_data(blog_content_type)
    context['hot_blogs_for_7_days'] = get_7_days_hot_blogs()
    return render(request, 'home.html', context)
Exemple #12
0
def home(request):
    blog_content_type = ContentType.objects.get_for_model(
        Blog)  #通过contenttype的获取相关模型的类或模型的实例,例如Blog
    dates, read_nums = get_seven_days_read_date(
        blog_content_type)  #传入blog模型返回数据
    today_hot_date = get_today_hot_date(blog_content_type)  #传入blog模型返回数据
    yesterday_hot_date = get_yesterday_hot_date(blog_content_type)

    #获取7天热门的缓存数据
    seven_days_hot_blog = cache.get(
        'seven_days_hot_blog')  #cache.get('缓存名称'),获取缓存数据
    #若无缓存从数据库中获取数据,设置再缓存。
    if seven_days_hot_blog is None:
        seven_days_hot_blog = get_seven_days_hot_blog()
        cache.set('seven_days_hot_blog', seven_days_hot_blog,
                  3600)  #设置缓存,cache.set('缓存名称',缓存的数据,缓存时间)

    context = {}
    context['dates'] = dates
    context['read_nums'] = read_nums
    context['today_hot_date'] = today_hot_date
    context['yesterday_hot_date'] = yesterday_hot_date
    context['seven_days_hot_blog'] = seven_days_hot_blog
    return render(request, 'home.html', context)