Suggestion listing: load library in single query

This commit is contained in:
Ruud
2013-09-04 22:30:32 +02:00
parent a6ce114284
commit b11e1d48e0
@@ -5,6 +5,7 @@ from couchpotato.core.helpers.variable import splitString
from couchpotato.core.plugins.base import Plugin from couchpotato.core.plugins.base import Plugin
from couchpotato.core.settings.model import Movie from couchpotato.core.settings.model import Movie
from couchpotato.environment import Env from couchpotato.environment import Env
from sqlalchemy.orm import joinedload_all
from sqlalchemy.sql.expression import or_ from sqlalchemy.sql.expression import or_
@@ -28,6 +29,7 @@ class Suggestion(Plugin):
if not movies or len(movies) == 0: if not movies or len(movies) == 0:
db = get_session() db = get_session()
active_movies = db.query(Movie) \ active_movies = db.query(Movie) \
.options(joinedload_all('library')) \
.filter(or_(*[Movie.status.has(identifier = s) for s in ['active', 'done']])).all() .filter(or_(*[Movie.status.has(identifier = s) for s in ['active', 'done']])).all()
movies = [x.library.identifier for x in active_movies] movies = [x.library.identifier for x in active_movies]