From e8e9edbb21cfe5dd33f491acbdcc1d9b98845a69 Mon Sep 17 00:00:00 2001 From: Kevin Morris Date: Thu, 11 Nov 2021 19:30:21 -0800 Subject: [PATCH] change(fastapi): simplify package details database queries Signed-off-by: Kevin Morris --- aurweb/routers/packages.py | 16 ++++------------ templates/partials/packages/details.html | 2 +- 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/aurweb/routers/packages.py b/aurweb/routers/packages.py index f03be217..0949909e 100644 --- a/aurweb/routers/packages.py +++ b/aurweb/routers/packages.py @@ -229,9 +229,7 @@ async def package(request: Request, name: str) -> Response: context["package"] = pkg # Package sources. - context["sources"] = db.query(models.PackageSource).join( - models.Package).join(models.PackageBase).filter( - models.PackageBase.ID == pkgbase.ID) + context["sources"] = pkg.package_sources # Package dependencies. dependencies = db.query(models.PackageDependency).join( @@ -246,16 +244,10 @@ async def package(request: Request, name: str) -> Response: models.Package.Name.asc()) context["required_by"] = required_by - licenses = db.query(models.License).join(models.PackageLicense).join( - models.Package).join(models.PackageBase).filter( - models.PackageBase.ID == pkgbase.ID) - context["licenses"] = licenses + context["licenses"] = pkg.package_licenses - conflicts = db.query(models.PackageRelation).join(models.Package).join( - models.PackageBase).filter( - and_(models.PackageRelation.RelTypeID == CONFLICTS_ID, - models.PackageBase.ID == pkgbase.ID) - ) + conflicts = pkg.package_relations.filter( + models.PackageRelation.RelTypeID == CONFLICTS_ID) context["conflicts"] = conflicts provides = pkg.package_relations.filter( diff --git a/templates/partials/packages/details.html b/templates/partials/packages/details.html index 7516b324..7e20b082 100644 --- a/templates/partials/packages/details.html +++ b/templates/partials/packages/details.html @@ -66,7 +66,7 @@ {% if show_package_details and licenses and licenses.count() %} {{ "Licenses" | tr }}: - {{ licenses.all() | join(', ', attribute='Name') | default('None' | tr) }} + {{ licenses.all() | join(', ', attribute='License.Name') }} {% endif %} {% if show_package_details and conflicts and conflicts.count() %}