fnp
/
wolnelektury.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update cache on collection edit.
[wolnelektury.git]
/
apps
/
catalogue
/
views.py
diff --git
a/apps/catalogue/views.py
b/apps/catalogue/views.py
index
92ecebf
..
e9b1465
100644
(file)
--- a/
apps/catalogue/views.py
+++ b/
apps/catalogue/views.py
@@
-103,13
+103,7
@@
def daisy_list(request):
def collection(request, slug):
coll = get_object_or_404(models.Collection, slug=slug)
def collection(request, slug):
coll = get_object_or_404(models.Collection, slug=slug)
- def get_filter():
- slugs = coll.book_slugs.split()
- # allow URIs
- slugs = [slug.rstrip('/').rsplit('/', 1)[-1] if '/' in slug else slug
- for slug in slugs]
- return Q(slug__in=slugs)
- return book_list(request, get_filter=get_filter,
+ return book_list(request, get_filter=coll.get_query,
template_name='catalogue/collection.html',
cache_key='catalogue.collection:%s' % coll.slug,
context={'collection': coll})
template_name='catalogue/collection.html',
cache_key='catalogue.collection:%s' % coll.slug,
context={'collection': coll})
@@
-192,7
+186,7
@@
def tagged_object_list(request, tags=''):
# get related tags from `tag_counter` and `theme_counter`
related_counts = {}
tags_pks = [tag.pk for tag in tags]
# get related tags from `tag_counter` and `theme_counter`
related_counts = {}
tags_pks = [tag.pk for tag in tags]
- for book in objects
.iterator()
:
+ for book in objects:
for tag_pk, value in itertools.chain(book.tag_counter.iteritems(), book.theme_counter.iteritems()):
if tag_pk in tags_pks:
continue
for tag_pk, value in itertools.chain(book.tag_counter.iteritems(), book.theme_counter.iteritems()):
if tag_pk in tags_pks:
continue