From 1e1eefcab0a6315197fcc659bf49db0914b39d39 Mon Sep 17 00:00:00 2001 From: Gabriel Augendre Date: Mon, 21 May 2018 23:40:56 +0200 Subject: [PATCH] Add warning messages and try to retrieve teacher automatically --- manuels/models.py | 2 +- manuels/templates/manuels/home_page.html | 8 ++++++-- manuels/templates/manuels/list_books.html | 12 ++++++++++++ manuels/views.py | 10 +++++++++- 4 files changed, 28 insertions(+), 4 deletions(-) diff --git a/manuels/models.py b/manuels/models.py index 39c99ba..010b109 100644 --- a/manuels/models.py +++ b/manuels/models.py @@ -16,7 +16,7 @@ class Teacher(models.Model): def get_absolute_url(self): from django.urls import reverse - return reverse('add_book', args=[str(self.pk)]) + return reverse('list_books', kwargs={'pk': str(self.pk)}) @property def full_name(self): diff --git a/manuels/templates/manuels/home_page.html b/manuels/templates/manuels/home_page.html index a9dffd4..9251097 100644 --- a/manuels/templates/manuels/home_page.html +++ b/manuels/templates/manuels/home_page.html @@ -14,8 +14,12 @@

Bienvenue

Si c'est la première fois que vous visitez ce site, remplissez le formulaire suivant afin de créer votre espace.

-

Sinon, utilisez le lien qui vous a été fourni pour voir votre liste - et y rajouter des livres.

+
+

+ Sinon, utilisez le lien qui vous a été fourni pour voir votre liste + et y rajouter des livres.
+ Si vous n'avez pas pensé à sauvegarder le lien, merci de vous adresser à votre documentaliste. +

diff --git a/manuels/templates/manuels/list_books.html b/manuels/templates/manuels/list_books.html index 75d5277..3bf626f 100644 --- a/manuels/templates/manuels/list_books.html +++ b/manuels/templates/manuels/list_books.html @@ -6,6 +6,18 @@

Bienvenue {{ teacher.full_name }}

+
+
+ +
+

{% block title %}Liste des livres demandés{% endblock %}

Ajouter un livre diff --git a/manuels/views.py b/manuels/views.py index df4f4ed..247552e 100644 --- a/manuels/views.py +++ b/manuels/views.py @@ -1,5 +1,5 @@ from django.contrib import messages -from django.shortcuts import get_object_or_404 +from django.shortcuts import get_object_or_404, redirect from django.urls import reverse from django.views.generic import CreateView, ListView @@ -12,12 +12,20 @@ class HomePageView(CreateView): fields = ['first_name', 'last_name', 'phone_number'] template_name = 'manuels/home_page.html' + def get(self, request, *args, **kwargs): + teacher_pk = request.session.get('teacher_pk') + if teacher_pk: + return redirect('list_books', pk=teacher_pk) + + return super().get(request, *args, **kwargs) + class BaseTeacherView: teacher = None def dispatch(self, request, *args, **kwargs): self.teacher = get_object_or_404(Teacher, pk=self.kwargs['pk']) + request.session['teacher_pk'] = str(self.teacher.pk) return super().dispatch(request, *args, **kwargs) def get_context_data(self, **kwargs):