fix(fastapi): support by maintainer search with no keywords

In this case, package search should return orphaned packages.

Signed-off-by: Kevin Morris <kevr@0cost.org>
This commit is contained in:
Kevin Morris 2021-10-30 16:22:54 -07:00
parent a38e126f49
commit c28f1695ed
No known key found for this signature in database
GPG key ID: F7E46DED420788F3
2 changed files with 30 additions and 3 deletions

View file

@ -90,9 +90,13 @@ class PackageSearch:
return self
def _search_by_maintainer(self, keywords: str) -> orm.Query:
self.query = self.query.join(
models.User, models.User.ID == models.PackageBase.MaintainerUID
).filter(models.User.Username == keywords)
if keywords:
self.query = self.query.join(
models.User, models.User.ID == models.PackageBase.MaintainerUID
).filter(models.User.Username == keywords)
else:
self.query = self.query.filter(
models.PackageBase.MaintainerUID.is_(None))
return self
def _search_by_comaintainer(self, keywords: str) -> orm.Query: