diff options
| author | rubenwardy <rw@rubenwardy.com> | 2020-04-21 20:35:05 +0100 |
|---|---|---|
| committer | rubenwardy <rw@rubenwardy.com> | 2020-04-21 20:35:05 +0100 |
| commit | 3992b19be321116ad425d88932e49164c61c2738 (patch) | |
| tree | b2ff86407f8df3c0d99df976c1e9810b08ada50f /app/blueprints/packages | |
| parent | a678a61c23cd61f11d7c0a570f26e9d333bb9731 (diff) | |
| download | cheatdb-1.24.3.tar.xz | |
Optimise SQL queriesv1.24.3
Diffstat (limited to 'app/blueprints/packages')
| -rw-r--r-- | app/blueprints/packages/packages.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/app/blueprints/packages/packages.py b/app/blueprints/packages/packages.py index a7d5793..700fc44 100644 --- a/app/blueprints/packages/packages.py +++ b/app/blueprints/packages/packages.py @@ -31,6 +31,7 @@ from wtforms import * from wtforms.validators import * from wtforms.ext.sqlalchemy.fields import QuerySelectField, QuerySelectMultipleField from sqlalchemy import or_, func +from sqlalchemy.orm import joinedload, subqueryload @menu.register_menu(bp, ".mods", "Mods", order=11, endpoint_arguments_constructor=lambda: { 'type': 'mod' }) @@ -43,6 +44,11 @@ def list_all(): query = qb.buildPackageQuery() title = qb.title + query = query.options( \ + joinedload(Package.license), \ + joinedload(Package.media_license), \ + subqueryload(Package.tags)) + if qb.lucky: package = query.first() if package: |
