fix(database): add missing search_official_title method to BangumiDatabase

BangumiDatabase.search_official_title() was called in
notification/manager.py (_get_poster) but never implemented,
causing a RenameThread crash:

  'BangumiDatabase' object has no attribute 'search_official_title'

Add the method as a simple exact-match lookup on Bangumi.official_title,
consistent with the existing search_id / search_rss pattern.
This commit is contained in:
HuajunGao
2026-02-28 12:14:50 +11:00
parent ded24b10da
commit d4e50509dd

View File

@@ -390,6 +390,10 @@ class BangumiDatabase:
logger.debug("[Database] Find bangumi id: %s.", _id)
return bangumi
def search_official_title(self, official_title: str) -> Optional[Bangumi]:
statement = select(Bangumi).where(Bangumi.official_title == official_title)
return self.session.execute(statement).scalar_one_or_none()
def search_ids(self, ids: list[int]) -> list[Bangumi]:
"""Batch lookup multiple bangumi by their IDs."""
if not ids: