X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/83ed4687677954c6411b0ac9e9bdfc9f303251e0..21de3884f82ce6c9b2d538d8d63c41cf68c9bae7:/src/search/views.py?ds=sidebyside diff --git a/src/search/views.py b/src/search/views.py index e06b1cc48..b6e290b87 100644 --- a/src/search/views.py +++ b/src/search/views.py @@ -189,9 +189,9 @@ def main(request): 'genre': genre, }, 'tags': { - 'epoch': Tag.objects.filter(category='epoch'), - 'genre': Tag.objects.filter(category='genre'), - 'kind': Tag.objects.filter(category='kind'), + 'epoch': Tag.objects.filter(category='epoch', for_books=True), + 'genre': Tag.objects.filter(category='genre', for_books=True), + 'kind': Tag.objects.filter(category='kind', for_books=True), }, }) @@ -227,11 +227,11 @@ def search_books(query, lang=None, only_audio=False, only_synchro=False, epoch=N def ensure_exists(r): try: - r.book + if not r.book: + return False except Book.DoesNotExist: return False - print(lang, r.book.language) if lang and r.book.language != lang: return False if only_audio and not r.book.has_mp3_file(): @@ -278,7 +278,8 @@ def search_pictures(query, epoch=None, kind=None, genre=None): def ensure_exists(r): try: - return r.picture + if not r.picture: + return False except Picture.DoesNotExist: return False @@ -289,6 +290,8 @@ def search_pictures(query, epoch=None, kind=None, genre=None): if genre and not r.picture.tags.filter(category='genre', slug=genre).exists(): return False + return True + results = [r for r in results if ensure_exists(r)] return results