from django.shortcuts import render, render_to_response from django.views import generic from django.views.generic.edit import CreateView, FormView # Create your views here. from accounts.forms import LoginForm from accounts.models import Accounts, Players from accounts.utils import LoginHelper class RegisterAccountView(CreateView): model = Accounts fields = ['name', 'password', 'email'] template_name = 'register_account.html' def form_valid(self, form): self.object = form.save(commit=False) hashed_password = LoginHelper.hash_password(self.object.password) self.object.password = hashed_password self.object.save() return render_to_response(self.template_name, self.get_context_data()) class LoginView(FormView): template_name = 'login.html' form_class = LoginForm success_url = '/loginarea/' class IndexView(generic.ListView): template_name = 'index.html' context_object_name = 'best_players' def get_queryset(self): return Players.objects.filter(group_id=1).order_by('-level')[:10]