diff --git a/books/models.py b/books/models.py index 012b96eb..47d40db2 100644 --- a/books/models.py +++ b/books/models.py @@ -8,6 +8,7 @@ from common.models import Entity, Mark, Review, Tag from common.utils import GenerateDateUUIDMediaFilePath from django.utils import timezone from django.conf import settings +from django.db.models import Q def book_cover_path(instance, filename): @@ -68,6 +69,16 @@ class Book(Entity): def get_tags_manager(self): return self.book_tags + def get_related_books(self): + qs = Q(orig_title = self.title) + if self.isbn: + qs = qs | Q(isbn = self.isbn) + if self.orig_title: + qs = qs | Q(title = self.orig_title) + qs = qs | Q(orig_title = self.orig_title) + qs = qs & ~Q(id = self.id) + return Book.objects.filter(qs) + @property def verbose_category_name(self): return _("书籍") diff --git a/books/templates/books/detail.html b/books/templates/books/detail.html index 36c81106..a07321b1 100644 --- a/books/templates/books/detail.html +++ b/books/templates/books/detail.html @@ -201,20 +201,6 @@
+ {{ b.title }} + ({{ b.pub_house }} {{ b.pub_year }}) + {{ b.get_source_site_display }} +
+ {% endfor %} +