def register(request): category_count = get_category_count() most_recent = Post.objects.order_by('-timestamp')[:3] if request.user.is_authenticated: return redirect('profile') elif request.method == 'POST': form = UserRegisterForm(request.POST) if form.is_valid(): user = form.save() username = form.cleaned_data.get('username') password = form.cleaned_data.get('password') user.save() messages.success( request, f'{username} user\'s has been created successfully. You can login now.' ) return redirect('login') else: form = UserRegisterForm() context = { 'form': form, 'most_recent': most_recent, 'category_count': category_count, } return render(request, 'users/register.html', context)
def login_page(request): category_count = get_category_count() most_recent = Post.objects.order_by('-timestamp')[:3] if request.user.is_authenticated: return redirect('profile') if request.method == 'POST': username = request.POST['username'] password = request.POST['password'] user = authenticate(request, username=username, password=password) if user is not None: login(request, user) if 'next' in request.POST: return redirect(request.POST.get('next')) else: return redirect('blog-home') else: messages.error( request, 'Please enter a correct username and password. Note that both fields may be case-sensitive.' ) context = { 'title': 'Login', 'most_recent': most_recent, 'category_count': category_count, } return render(request, 'users/login.html', context)
def get_context_data(self, **kwargs): category_count = get_category_count() most_recent = Post.objects.order_by('-timestamp')[:3] context = super().get_context_data(**kwargs) context['most_recent'] = most_recent context['category_count'] = category_count return context
def get_context_data(self, **kwargs): category_count = get_category_count() most_recent = Post.objects.order_by('-timestamp')[:3] context = super().get_context_data(**kwargs) context['most_recent'] = most_recent context['category_count'] = category_count context['login_url'] = resolve_url(settings.LOGIN_URL) return context
def get_context_data(self, **kwargs): category_count = get_category_count() most_recent = Post.objects.order_by('-timestamp')[:3] context = super().get_context_data(**kwargs) context.update({'title': self.title, **(self.extra_context or {})}) context['most_recent'] = most_recent context['category_count'] = category_count return context
def get_context_data(self, *args, **kwargs): category_count = get_category_count() most_recent = Post.objects.order_by('-timestamp')[:3] context = super(SearchListView, self).get_context_data(*args, **kwargs) query = self.request.GET.get('q') context['head_title'] = 'Search' context['most_recent'] = most_recent context['category_count'] = category_count context['query'] = self.request.GET.get('q') return context
def logout_page(request): category_count = get_category_count() most_recent = Post.objects.order_by('-timestamp')[:3] logout(request) messages.success(request, 'Log Out 완료!') context = { 'title': 'Logout', 'most_recent': most_recent, 'category_count': category_count, } return render(request, 'users/logout.html', context)
def get_context_data(self, **kwargs): category_count = get_category_count() most_recent = Post.objects.order_by('-timestamp')[:3] context = super().get_context_data(**kwargs) if self.validlink: context['validlink'] = True else: context.update({ 'form': None, 'title': _('Password reset unsuccessful'), 'validlink': False, }) context['most_recent'] = most_recent context['category_count'] = category_count return context
def profile(request): category_count = get_category_count() most_recent = Post.objects.order_by('-timestamp')[:3] if request.method == 'POST': u_form = UserUpdateForm(request.POST, instance=request.user) p_form = ProfileUpdateForm(request.POST, request.FILES, instance=request.user.profile) if u_form.is_valid() and p_form.is_valid(): u_form.save() p_form.save() messages.success(request, '프로필 수정이 완료되었습니다!') return redirect('profile') else: u_form = UserUpdateForm(instance=request.user) p_form = ProfileUpdateForm(instance=request.user.profile) context = { 'u_form': u_form, 'p_form': p_form, 'most_recent': most_recent, 'category_count': category_count, } return render(request, 'users/profile.html', context)
def login_page(request): category_count = get_category_count() most_recent = Post.objects.order_by('-timestamp')[:3] if request.user.is_authenticated: return redirect('profile') if request.method == 'POST': username = request.POST['username'] password = request.POST['password'] user = authenticate(request, username=username, password=password) if user is not None: login(request, user) if 'next' in request.POST: return redirect(request.POST.get('next')) else: return redirect('home') else: messages.error(request, '아이디 또는 비밀번호가 일치하지 않습니다') context = { 'title': 'Login', 'most_recent': most_recent, 'category_count': category_count, } return render(request, 'users/login.html', context)
def post_detail(request,pk): Post=get_object_or_404(post,pk=pk) Postview.objects.get_or_create(user=request.user,post=Post) categories_count=get_category_count() post_categories=category.objects.all() others=post.objects.all() form=commentform(request.POST or None) if request.method == 'POST': if form.is_valid(): form.instance.user=request.user form.instance.post=Post form.save() return redirect(reverse('post-detail',kwargs={ 'pk':Post.pk })) context={ 'post':Post, 'categories':post_categories, 'categories_count':categories_count, 'others':others, 'form':form, } return render(request,'posts/post.html',context)