diff --git a/blog/urls.py b/blog/urls.py index 8e12b5f..6787811 100644 --- a/blog/urls.py +++ b/blog/urls.py @@ -24,13 +24,6 @@ urlpatterns = [ url(r'^$', views.IndexView.as_view(), name='index'), url(r'^page/(?P\d+)$', views.IndexView.as_view(), name='index_page'), - # 为了兼容之前的错误url,后续去掉 - # todo remove - url(r'^article/(?P\d+)/(?P\d+)/(?P\d+)/(?P\d+)-(?P\S+).html$', - # cache_page(60 * 60 * 10, key_prefix="blogdetail")(views.ArticleDetailView.as_view()), - views.ArticleDetailView.as_view(), - name='detail'), - url(r'^article/(?P\d+)/(?P\d+)/(?P\d+)/(?P\d+).html$', views.ArticleDetailView.as_view(), name='detailbyid'), diff --git a/blog/views.py b/blog/views.py index 74d96d3..b5bbd68 100644 --- a/blog/views.py +++ b/blog/views.py @@ -1,34 +1,20 @@ from django.shortcuts import render # Create your views here. +import os +import datetime from django.views.generic.list import ListView -from django.views.generic import TemplateView -from django.views.decorators.cache import cache_page from django.views.generic.detail import DetailView -from django.views.generic import UpdateView -from django.views.generic.edit import CreateView, FormView -from django.views.generic.dates import YearArchiveView, MonthArchiveView -from blog.models import Article, Category, Tag -from django.core.paginator import Paginator, PageNotAnInteger, EmptyPage -from django.core.exceptions import ObjectDoesNotExist -from comments.forms import CommentForm from django.conf import settings from django import forms -from django import http from django.http import HttpResponse -from abc import ABCMeta, abstractmethod -from haystack.generic_views import SearchView -from blog.forms import BlogSearchForm -import datetime +from django.http import HttpResponseRedirect from django.views.decorators.csrf import csrf_exempt -import os from django.contrib.auth.decorators import login_required -from DjangoBlog.utils import cache, cache_decorator, logger, get_md5 -from django.utils.cache import get_cache_key -from django.utils.decorators import classonlymethod -from django.utils.decorators import method_decorator +from DjangoBlog.utils import cache, logger from django.shortcuts import get_object_or_404 -from django.http import HttpResponseRedirect +from blog.models import Article, Category, Tag +from comments.forms import CommentForm class ArticleListView(ListView): @@ -100,23 +86,12 @@ class ArticleDetailView(DetailView): def get_object(self): obj = super(ArticleDetailView, self).get_object() - obj.viewed() self.object = obj return obj - def dispatch(self, request, *args, **kwargs): - # todo remove - slug = self.kwargs['slug'] if 'slug' in self.kwargs else '' - if slug: - obj = super(ArticleDetailView, self).get_object() - return HttpResponseRedirect(obj.get_absolute_url()) - else: - return super(ArticleDetailView, self).dispatch(request, *args, **kwargs) - def get_context_data(self, **kwargs): articleid = int(self.kwargs[self.pk_url_kwarg]) - comment_form = CommentForm() user = self.request.user @@ -150,8 +125,6 @@ class CategoryDetailView(ArticleListView): categoryname = category.name self.categoryname = categoryname categorynames = list(map(lambda c: c.name, category.get_sub_categorys())) - - # article_list = Article.objects.filter(category__name=categoryname, status='p') article_list = Article.objects.filter(category__name__in=categorynames, status='p') return article_list diff --git a/oauth/views.py b/oauth/views.py index 509e4fb..42e5b8f 100644 --- a/oauth/views.py +++ b/oauth/views.py @@ -33,6 +33,9 @@ def authorize(request): user = manager.get_oauth_userinfo() if user: + if not user.nikename: + import datetime + user.nikename = "djangoblog" + datetime.datetime.now().strftime('%Y%m%f%H%m%s') try: token = user.token user = OAuthUser.objects.get(type=type, openid=user.openid)