修复部分bug

develop
车亮亮 9 years ago
parent e1c7dc935d
commit 303f1e8bff

@ -1,14 +1,19 @@
from django.shortcuts import render
from django.contrib.auth.views import login
from .forms import RegisterForm,LoginForm
from .forms import RegisterForm, LoginForm
from django.contrib.auth import authenticate
from django.views.generic.edit import FormView
from django.contrib.auth import get_user_model
from django.http import HttpResponseRedirect
from django.core.urlresolvers import reverse
from django.contrib.auth.forms import AuthenticationForm, UserCreationForm
from django.contrib import auth
from django.views.decorators.cache import never_cache
# Create your views here.
class RegisterView(FormView):
form_class = RegisterForm
template_name = 'account/registration_form.html'
@ -20,6 +25,20 @@ class RegisterView(FormView):
return HttpResponseRedirect('/')
class LoginView(FormView):
form_class =LoginForm
form_class = LoginForm
template_name = 'account/login.html'
def form_valid(self, form):
form = AuthenticationForm(data=self.request.POST, request=self.request)
if form.is_valid():
# login(self.request, form.get_user())
auth.login(self.request, form.get_user())
return HttpResponseRedirect('/')
else:
return self.render_to_response({
'form': form
})

@ -23,14 +23,14 @@ class Article(models.Model):
help_text="不指定发布时间则视为草稿,可以指定未来时间,到时将自动发布。")
status = models.CharField('文章状态', max_length=1, choices=STATUS_CHOICES, default='o')
comment_status = models.CharField('评论状态', max_length=1, choices=COMMENT_STATUS)
summary = models.CharField('摘要', max_length=200, blank=True, help_text="可选若为空将摘取正文的前300个字符。")
# summary = models.CharField('摘要', max_length=200, blank=True, help_text="可选若为空将摘取正文的前300个字符。")
views = models.PositiveIntegerField('浏览量', default=0)
author = models.ForeignKey(settings.AUTH_USER_MODEL, verbose_name='作者', on_delete=models.CASCADE)
category = models.ForeignKey('Category', verbose_name='分类', on_delete=models.CASCADE)
tags = models.ManyToManyField('Tag', verbose_name='标签集合', blank=True)
slug = models.SlugField(default='no-slug', max_length=60, blank=True)
slug = models.SlugField(default='no-slug', max_length=10, blank=True)
def __str__(self):
return self.title
@ -63,7 +63,7 @@ class Article(models.Model):
return names
def save(self, *args, **kwargs):
self.summary = self.summary or self.body[:settings.ARTICLE_SUB_LENGTH]
# self.summary = self.summary or self.body[:settings.ARTICLE_SUB_LENGTH]
if not self.slug or self.slug == 'no-slug' or not self.id:
# Only set the slug when the object is created.
self.slug = slugify(self.title)

@ -113,11 +113,12 @@ def load_articletags(article):
@register.inclusion_tag('blog/tags/sidebar.html')
def load_sidebar():
def load_sidebar(user):
"""
加载侧边栏
:return:
"""
recent_articles = Article.objects.filter(status='p')[:settings.SIDEBAR_ARTICLE_COUNT]
sidebar_categorys = Category.objects.all()
most_read_articles = Article.objects.filter(status='p').order_by('-views')[:settings.SIDEBAR_ARTICLE_COUNT]
@ -131,7 +132,8 @@ def load_sidebar():
'most_read_articles': most_read_articles,
'article_dates': dates,
'sidabar_links': links,
'sidebar_comments': commment_list
'sidebar_comments': commment_list,
'user': user
}

@ -60,8 +60,9 @@ class ArticleDetailView(DetailView):
return None
comment_form = CommentForm()
u = self.request.user
if self.request.user.is_authenticated():
if self.request.user.is_authenticated:
comment_form.fields.update({
'email': forms.CharField(widget=forms.HiddenInput()),
'name': forms.CharField(widget=forms.HiddenInput()),
@ -158,6 +159,6 @@ class TagDetailView(ArticleListView):
def test(requests):
post = Article.objects.all()
for p in post:
#p.views += 1
# p.views += 1
p.summary = p.body[:settings.ARTICLE_SUB_LENGTH]
p.save()

@ -7,7 +7,6 @@
{% load_article_detail article False %}
<nav class="nav-single">
<h3 class="assistive-text">文章导航</h3>
{% if next_article %}
@ -35,7 +34,7 @@
{% block sidebar %}
{% load_sidebar %}
{% load_sidebar user %}
{% endblock %}

@ -37,7 +37,7 @@
{% block sidebar %}
{% load_sidebar %}
{% load_sidebar request.user %}
{% endblock %}

@ -41,7 +41,8 @@
{% for c in sidebar_comments %}
<li class="recentcomments">
<span class="comment-author-link">
<a href="https://blog.misuzu.moe/" rel="external nofollow" class="url">{{ c.author.username }}</a></span>
<a href="https://blog.misuzu.moe/" rel="external nofollow"
class="url">{{ c.author.username }}</a></span>
发表在
<a href="{{ c.article.get_absolute_url }}">{{ c.article.title }}</a>
</li>
@ -73,4 +74,18 @@
</ul>
</aside>
{% endif %}
<aside id="meta-2" class="widget widget_meta"><h3 class="widget-title">功能</h3>
<ul>
<li><a href="{{ SITE_BASE_URL }}/admin/">管理站点</a></li>
{% if user.is_authenticated %}
<li><a href="{{ SITE_BASE_URL }}/logout/">登出</a>
</li>
{% else %}
<li><a href="{% url "account:login" %}">登陆</a>
{% endif %}
</ul>
</aside>
</div><!-- #secondary -->
Loading…
Cancel
Save