diff --git a/woodwind/tasks.py b/woodwind/tasks.py index 77ff98a..4a3a26f 100644 --- a/woodwind/tasks.py +++ b/woodwind/tasks.py @@ -152,7 +152,8 @@ def check_push_subscription(session, feed, response): hub = response.links.get('hub', {}).get('url') topic = response.links.get('self', {}).get('url') - logger.debug('link headers. links=%s, hub=%s, topic=%s', response.links, hub, topic) + logger.debug('link headers. links=%s, hub=%s, topic=%s', + response.links, hub, topic) if not hub or not topic: # try to find link rel elements if feed.type == 'html': diff --git a/woodwind/views.py b/woodwind/views.py index 4b2e77f..904bf72 100644 --- a/woodwind/views.py +++ b/woodwind/views.py @@ -13,6 +13,7 @@ import requests import re import urllib import cgi +import sqlalchemy views = flask.Blueprint('views', __name__) @@ -26,10 +27,14 @@ def index(): if flask_login.current_user.is_authenticated(): per_page = flask.current_app.config.get('PER_PAGE', 30) offset = (page - 1) * per_page - entry_query = Entry.query\ - .join(Entry.feed)\ - .join(Feed.users)\ - .filter(User.id == flask_login.current_user.id) + entry_query = Entry.query + + entry_query = entry_query\ + .options(sqlalchemy.orm.subqueryload(Entry.feed), + sqlalchemy.orm.subqueryload(Entry.reply_context))\ + .join(Entry.feed)\ + .join(Feed.users)\ + .filter(User.id == flask_login.current_user.id) if 'feed' in flask.request.args: feed_hex = flask.request.args.get('feed').encode()