增加友情链接页面

sh_branch
liangliangyy 7 years ago
parent 0c57e633da
commit e06e40ad85

@ -13,9 +13,9 @@
@time: 2016/11/6 下午4:23
"""
from .models import Category, Article, Tag, BlogSettings
from django.conf import settings
from comments.models import Comment
from DjangoBlog.utils import cache, get_blog_setting
from datetime import datetime
import logging
logger = logging.getLogger(__name__)
@ -36,7 +36,6 @@ def seo_processor(requests):
'SITE_SEO_DESCRIPTION': setting.site_seo_description,
'SITE_DESCRIPTION': setting.site_description,
'SITE_KEYWORDS': setting.site_keywords,
'SITE_BASE_URL': requests.scheme + '://' + requests.get_host() + '/',
'ARTICLE_SUB_LENGTH': setting.article_sub_length,
'nav_category_list': Category.objects.all(),
'nav_pages': Article.objects.filter(type='p', status='p'),
@ -44,7 +43,8 @@ def seo_processor(requests):
'BEIAN_CODE': setting.beiancode,
'ANALYTICS_CODE': setting.analyticscode,
"BEIAN_CODE_GONGAN": setting.gongan_beiancode,
"SHOW_GONGAN_CODE": setting.show_gongan_code
"SHOW_GONGAN_CODE": setting.show_gongan_code,
"CURRENT_YEAR": datetime.now().year
}
cache.set(key, value, 60 * 60 * 10)

@ -9,10 +9,8 @@ from django.core.exceptions import ValidationError
from django.utils.translation import gettext_lazy as _
from DjangoBlog.utils import get_current_site
from DjangoBlog.utils import cache_decorator, cache
from django.utils.functional import cached_property
from django.utils.timezone import now
from mdeditor.fields import MDTextField
from django.db.models.signals import post_save
logger = logging.getLogger(__name__)
@ -21,6 +19,7 @@ LINK_SHOW_TYPE = (
('l', '列表页'),
('p', '文章页面'),
('a', '全站'),
('s', '友情链接页面'),
)

@ -1,5 +1,5 @@
from django.test import Client, RequestFactory, TestCase
from blog.models import Article, Category, Tag, SideBar
from blog.models import Article, Category, Tag, SideBar, Links
from django.contrib.auth import get_user_model
from DjangoBlog.utils import get_current_site, get_md5
from blog.forms import BlogSearchForm
@ -120,6 +120,11 @@ class ArticleTest(TestCase):
u = gravatar_url('liangliangyy@gmail.com')
u = gravatar('liangliangyy@gmail.com')
link = Links(sequence=1, name="lylinux", link='https://wwww.lylinux.net')
link.save()
response = self.client.get('/links.html')
self.assertEqual(response.status_code, 200)
def __check_pagination__(self, p, type, value):
s = load_pagination_info(p.page(1), type, value)
self.assertIsNotNone(s)

@ -40,6 +40,8 @@ urlpatterns = [
path(r'tag/<slug:tag_name>.html', views.TagDetailView.as_view(), name='tag_detail'),
path(r'tag/<slug:tag_name>/<int:page>.html', views.TagDetailView.as_view(), name='tag_detail_page'),
path('archives.html', views.ArchivesView.as_view(), name='archives'),
path('links.html', views.LinkListView.as_view(), name='links'),
path(r'upload', views.fileupload, name='upload'),
path(r'refresh', views.refresh_memcache, name='refresh')
]

@ -12,7 +12,7 @@ from django.views.decorators.csrf import csrf_exempt
from django.contrib.auth.decorators import login_required
from DjangoBlog.utils import cache, get_md5, get_blog_setting
from django.shortcuts import get_object_or_404
from blog.models import Article, Category, Tag
from blog.models import Article, Category, Tag, Links
from comments.forms import CommentForm
import logging
@ -245,13 +245,21 @@ class ArchivesView(ArticleListView):
return cache_key
class LinkListView(ListView):
model = Links
template_name = 'blog/links_list.html'
def get_queryset(self):
return Links.objects.filter(is_enable=True)
@csrf_exempt
def fileupload(request):
'''
"""
该方法需自己写调用端来上传图片该方法仅提供图床功能
:param request:
:return:
'''
"""
if request.method == 'POST':
sign = request.GET.get('sign', None)
if not sign:

@ -0,0 +1,44 @@
{% extends 'share_layout/base.html' %}
{% load blog_tags %}
{% load cache %}
{% block header %}
<title>友情链接 | {{ SITE_DESCRIPTION }}</title>
<meta name="description" content="{{ SITE_SEO_DESCRIPTION }}"/>
<meta name="keywords" content="{{ SITE_KEYWORDS }}"/>
<meta property="og:type" content="blog"/>
<meta property="og:title" content="{{ SITE_NAME }}"/>
<meta property="og:description" content="{{ SITE_DESCRIPTION }}"/>
<meta property="og:url" content="{{ SITE_BASE_URL }}"/>
<meta property="og:site_name" content="{{ SITE_NAME }}"/>
{% endblock %}
{% block content %}
<div id="primary" class="site-content">
<div id="content" role="main">
<header class="archive-header">
<p class="archive-title">友情链接</p>
</header><!-- .archive-header -->
<div class="entry-content">
<ul>
{% for obj in object_list %}
<li>
<a href="{{ obj.link }}">{{ obj.name }}</a>
</li>
{% endfor %} </ul>
</div>
</div><!-- #content -->
</div><!-- #primary -->
{% endblock %}
{% block sidebar %}
{% load_sidebar user 'i' %}
{% endblock %}

@ -1,18 +1,23 @@
<footer id="colophon" role="contentinfo">
<div class="site-info" style="text-align: center">
Copyright&copy;&nbsp;2017&nbsp;
<a href="{{ SITE_BASE_URL }}" target="blank">{{ SITE_NAME }}</a>
Copyright&copy;&nbsp;{{ CURRENT_YEAR }}&nbsp;
<a href="/" target="blank">{{ SITE_NAME }}</a>
&nbsp;|&nbsp;
<a href="{{ SITE_BASE_URL }}sitemap.xml" title="SiteMap" target="_blank">
<a href="/sitemap.xml" title="SiteMap" target="_blank">
SiteMap
</a>
&nbsp;|&nbsp;
<a href="{{ SITE_BASE_URL }}feed" title="RSS Feed" target="_blank">
<a href="/feed" title="RSS Feed" target="_blank">
RSS Feed
</a>
&nbsp;|&nbsp;
<a href="/links.html" title="友情链接" rel="nofollow" target="_blank">
友情链接
</a>
|&nbsp; Hosting On&nbsp;
<a href="https://www.linode.com/?r=b0d38794d05ef8816b357a929106e89b7c6452f9" target="blank" rel="nofollow">Linode</a>
|&nbsp;
<a href="https://tongji.baidu.com/sc-web/3478620/home/ico?siteId=11261596" target="_blank"
rel="nofollow">百度统计</a>
@ -23,9 +28,9 @@
Powered by
<a href="https://www.djangoproject.com/" rel="nofollow" target="blank">Django</a>
&nbsp;|&nbsp;
<a href="https://github.com/liangliangyy/DjangoBlog" rel="nofollow" target="blank">LiangLiangyy</a>
<a href="https://github.com/liangliangyy/DjangoBlog" rel="nofollow" target="blank">liangliangyy</a>
|
<a href="https://www.lylinux.net" target="blank">Lylinux</a>
<a href="https://www.lylinux.net" target="blank">lylinux</a>
|
本页面加载耗时:<!!LOAD_TIMES!!>s
</div>

Loading…
Cancel
Save