diff --git a/app/api/endpoints/media.py b/app/api/endpoints/media.py index 83c4eab1..c3a5ef49 100644 --- a/app/api/endpoints/media.py +++ b/app/api/endpoints/media.py @@ -219,14 +219,13 @@ def detail(mediaid: str, type_name: str, title: Optional[str] = None, year: str ) event = eventmanager.send_event(ChainEventType.MediaRecognizeConvert, event_data) # 使用事件返回的上下文数据 - if event and event.event_data: + if event and event.event_data and event.event_data.media_dict: event_data: MediaRecognizeConvertEventData = event.event_data - if event_data.media_dict: - new_id = event_data.media_dict.get("id") - if event_data.convert_type == "themoviedb": - mediainfo = MediaChain().recognize_media(tmdbid=new_id, mtype=mtype) - elif event_data.convert_type == "douban": - mediainfo = MediaChain().recognize_media(doubanid=new_id, mtype=mtype) + new_id = event_data.media_dict.get("id") + if event_data.convert_type == "themoviedb": + mediainfo = MediaChain().recognize_media(tmdbid=new_id, mtype=mtype) + elif event_data.convert_type == "douban": + mediainfo = MediaChain().recognize_media(doubanid=new_id, mtype=mtype) elif title: # 使用名称识别兜底 meta = MetaInfo(title) diff --git a/app/schemas/event.py b/app/schemas/event.py index 4bb7ba95..bf89c793 100644 --- a/app/schemas/event.py +++ b/app/schemas/event.py @@ -306,7 +306,7 @@ class MediaRecognizeConvertEventData(ChainEventData): convert_type: str = Field(..., description="转换类型(themoviedb/douban)") # 输出参数 - media_dict: dict = Field(default=dict, description="转换后的媒体信息(TheMovieDb/豆瓣)") + media_dict: dict = Field(default_factory=dict, description="转换后的媒体信息(TheMovieDb/豆瓣)") class StorageOperSelectionEventData(ChainEventData):