需求背景
入库通知模板中,电视剧整理完成后无法显示当前季的总集数。用户自定义通知模板时希望展示类似"总集:6集"的信息,但目前后端模板变量中缺少该字段。
使用场景
- 用户配置入库通知模板,希望在电视剧整理通知中显示当前季的总集数
- 例如《9号秘事》S09 共 6 集,通知中显示"总集:6"
- 目前
file_count 变量仅表示本次整理的文件数(单文件整理时为 1),无法反映该季实际总集数
期望能力
在 TemplateContextBuilder._add_episode_details() 方法中,将 episodes 参数(即 __episodes_info__)的长度作为模板变量 total_episodes 注入上下文,供通知模板使用。
当前状态
- 后端
message.py 的 _add_episode_details 方法已接收 episodes: Optional[List[TmdbEpisode]] 参数
- 该参数通过
__episodes_info__ 注入上下文,但未计算总集数
- 通知模板中无法直接对
__episodes_info__ 取长度(Jinja2 模板中无法调用 len())
- 已在本地添加一行
"total_episodes": len(episodes) if episodes else 0 验证可行
建议修改
在 app/helper/message.py 的 _add_episode_details 方法中,meta_info 字典末尾添加:
# 当前季总集数
"total_episodes": len(episodes) if episodes else 0,
补充说明
仅添加变量还不够,调用方 send_transfer_message(app/chain/transfer.py)也需要传入 episodes_info 参数,否则 total_episodes 始终为 0。建议同步修改 send_transfer_message,在电视剧入库时通过 TmdbChain().tmdb_episodes() 获取当前季的剧集信息并传入。
需求背景
入库通知模板中,电视剧整理完成后无法显示当前季的总集数。用户自定义通知模板时希望展示类似"总集:6集"的信息,但目前后端模板变量中缺少该字段。
使用场景
file_count变量仅表示本次整理的文件数(单文件整理时为 1),无法反映该季实际总集数期望能力
在
TemplateContextBuilder._add_episode_details()方法中,将episodes参数(即__episodes_info__)的长度作为模板变量total_episodes注入上下文,供通知模板使用。当前状态
message.py的_add_episode_details方法已接收episodes: Optional[List[TmdbEpisode]]参数__episodes_info__注入上下文,但未计算总集数__episodes_info__取长度(Jinja2 模板中无法调用len())"total_episodes": len(episodes) if episodes else 0验证可行建议修改
在
app/helper/message.py的_add_episode_details方法中,meta_info字典末尾添加:补充说明
仅添加变量还不够,调用方
send_transfer_message(app/chain/transfer.py)也需要传入episodes_info参数,否则total_episodes始终为 0。建议同步修改send_transfer_message,在电视剧入库时通过TmdbChain().tmdb_episodes()获取当前季的剧集信息并传入。