fnp
/
wolnelektury.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
opds: added search, moved to separate app
[wolnelektury.git]
/
apps
/
catalogue
/
views.py
diff --git
a/apps/catalogue/views.py
b/apps/catalogue/views.py
index
088d0ee
..
1180ab2
100644
(file)
--- a/
apps/catalogue/views.py
+++ b/
apps/catalogue/views.py
@@
-164,7
+164,7
@@
def tagged_object_list(request, tags=''):
objects = fragments
else:
# get relevant books and their tags
objects = fragments
else:
# get relevant books and their tags
- objects = models.Book.tagged.with_all(tags)
.order_by()
+ objects = models.Book.tagged.with_all(tags)
if not shelf_is_set:
# eliminate descendants
l_tags = models.Tag.objects.filter(category='book', slug__in=[book.book_tag_slug() for book in objects])
if not shelf_is_set:
# eliminate descendants
l_tags = models.Tag.objects.filter(category='book', slug__in=[book.book_tag_slug() for book in objects])
@@
-326,7
+326,7
@@
def _sqlite_word_starts_with(name, prefix):
return Q(**kwargs)
return Q(**kwargs)
-if settings.DATABASE
_ENGINE == '
sqlite3':
+if settings.DATABASE
S['default']['ENGINE'] == 'django.db.backends.
sqlite3':
_word_starts_with = _sqlite_word_starts_with
_word_starts_with = _sqlite_word_starts_with
@@
-359,6
+359,10
@@
def _get_result_type(match):
return type
return type
+def books_starting_with(prefix):
+ prefix = prefix.lower()
+ return models.Book.objects.filter(_word_starts_with('title', prefix))
+
def find_best_matches(query, user=None):
""" Finds a Book, Tag or Bookstub best matching a query.
def find_best_matches(query, user=None):
""" Finds a Book, Tag or Bookstub best matching a query.