From 9a66ba03144260b5e4e9d7382a105fcd08f0f27d Mon Sep 17 00:00:00 2001 From: Pedro Rey Anca Date: Tue, 3 Dec 2024 13:26:53 +0100 Subject: [PATCH] Allow to filter quotes by author slug --- web/lazaro_quotes/urls.py | 1 + web/lazaro_quotes/views.py | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/web/lazaro_quotes/urls.py b/web/lazaro_quotes/urls.py index ab3b90f..a94e1e0 100644 --- a/web/lazaro_quotes/urls.py +++ b/web/lazaro_quotes/urls.py @@ -6,5 +6,6 @@ app_name = "lazaro_quotes" urlpatterns = [ path("", views.show_quote, name="show_quote"), + path("", views.show_quote, name="show_quote"), path("suggest", views.suggest_quote_form, name="suggest_quote_form") ] diff --git a/web/lazaro_quotes/views.py b/web/lazaro_quotes/views.py index b04edbd..8ffb091 100644 --- a/web/lazaro_quotes/views.py +++ b/web/lazaro_quotes/views.py @@ -5,8 +5,12 @@ from .models import Quote, Suggester from .forms import SuggestionForm -def show_quote(request): - quote = Quote.objects.order_by('?').first() or None +def show_quote(request, author_slug=None): + if author_slug is None: + quote = Quote.objects.order_by('?').first() + else: + quote = Quote.objects.filter( + author__slug=author_slug).order_by('?').first() return render(request, 'lazaro_quotes/show_quote.html', {"quote": quote})