Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class BoxesView(ListView, FormMixin):
- template_name = 'polls.html' # extends base.html
- form_class = UserRegistrationForm
- def get_context_data(self, **kwargs):
- context = super(BoxesView, self).get_context_data()
- question_list = Question.objects.all().order_by('-date')
- choice = Choice.objects.all()
- context['question_list'] = question_list
- context['choice'] = choice
- q_list = []
- returned_list = []
- for i in question_list:
- q_list.append(i)
- for a, b in CATEGORY_CHOICES:
- name = resolve(self.request.path_info).url_name
- if b == name:
- category = a
- search = self.request.GET.get('search')
- posts = Post.objects.all().filter(category=category).order_by('-date')
- if search:
- posts = posts.filter(
- Q(title__icontains=search) |
- Q(content__icontains=search)
- )
- else:
- posts = Post.objects.all().filter(category=category).order_by('-date')
- context['posts'] = posts
- total = 0
- for post in posts:
- returned_list.append(post)
- total += 1
- if total == 4:
- total = 0
- for i in q_list:
- returned_list.append(i)
- q_list.remove(i)
- break
- paginator = Paginator(returned_list, 14)
- page = self.request.GET.get('page')
- try:
- lst = paginator.page(page)
- except PageNotAnInteger:
- # If page is not an integer, deliver first page.
- lst = paginator.page(1)
- except EmptyPage:
- # If page is out of range (e.g. 9999), deliver last page of results.
- lst = paginator.page(paginator.num_pages)
- context['lst'] = lst
- return context
- def get_queryset(self):
- pass
- def register(request):
- form = UserRegistrationForm(request.POST)
- if form.is_valid():
- username = form.cleaned_data['username']
- password = form.cleaned_data['password']
- email = form.cleaned_data['email']
- user = User.objects.create_user(username=username, password=password, email=email)
- user.save()
- return redirect('/')
- else:
- form = UserRegistrationForm()
- return redirect('/')
- def user_login(request):
- form_login = UserLoginForm(request.POST)
- if form_login.is_valid():
- username = form_login.cleaned_data['username']
- password = form_login.cleaned_data['password']
- user = authenticate(username=username, password=password)
- login(request, user)
- else:
- form_login = UserLoginForm()
- return redirect('/')
- class UserLoginForm(forms.ModelForm):
- username = forms.CharField(max_length=25)
- password = forms.CharField(widget=forms.PasswordInput)
- class Meta:
- model = User
- fields = [
- 'username',
- 'password'
- ]
- class UserRegistrationForm(forms.ModelForm):
- email = forms.EmailField()
- username = forms.CharField(max_length=25)
- password = forms.CharField(widget=forms.PasswordInput)
- confirm_password = forms.CharField(widget=forms.PasswordInput)
- class Meta:
- model = User
- fields = [
- 'username',
- 'email',
- 'password',
- 'confirm_password',
- ]
- <form method="post" enctype="multipart/form-data" action="{% url 'user_login' %}">{% csrf_token %}
- <div class="loginWrapper">
- <div class="login">
- <div class="loginBox">
- {{ form_login.username }}
- {{ form_login.password }}
- <input type="submit" value="login" style="margin-left: 10px"/>
- </div>
- </div>
- </div>
- </form>
- <form method="post" enctype="multipart/form-data" action="{% url 'register' %}">{% csrf_token %}
- <div class="registerWrapper">
- <div class="register">
- <div class="registerBox">
- {{ form.errors }}
- {{ form.username|placeholder:"username" }}
- {{ form.email|placeholder:"email" }}
- {{ form.password|placeholder:"password" }}
- {{ form.confirm_password|placeholder:"confirm password" }}
- <input type="submit" value="register" />
- </div>
- </div>
- </div>
- </form>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement