Skip to content

fix: 支持目录配置匹配多个媒体类别 - #6580

Closed
Tsutomu-miku wants to merge 1 commit into
jxxghp:v2from
Tsutomu-miku:fix/multi-media-category-directory-match
Closed

fix: 支持目录配置匹配多个媒体类别#6580
Tsutomu-miku wants to merge 1 commit into
jxxghp:v2from
Tsutomu-miku:fix/multi-media-category-directory-match

Conversation

@Tsutomu-miku

@Tsutomu-miku Tsutomu-miku commented Sep 4, 2026

Copy link
Copy Markdown

问题

目录设置允许同时选择多个媒体类别,并以逗号分隔字符串保存,例如 日番,日韩剧。当前 DirectoryHelper 使用严格字符串相等判断目录类别,自动整理识别出的单一类别 日番 无法匹配该配置,最终提示“未找到有效的媒体库目录”;手动指定目标目录则可以绕过该判断。

修复

  • 新增私有类别匹配函数,将配置值按半角/全角逗号拆分并去除两侧空格
  • get_dir()get_download_dir_by_save_path() 统一使用成员匹配
  • 保持单类别配置与类别不匹配时的原有行为

测试

  • pytest -v tests/test_directory.py:6 passed
  • pylint app/helper/directory.py:10.00/10
  • 变异验证:临时恢复严格相等逻辑后,4 个多类别用例按预期失败
  • python tests/run.py(Windows / Python 3.12):2413 passed, 1 skipped, 55 failed。55 个失败集中在 Windows/Linux 平台差异及既有无关模块;本 PR 新增的目录测试全部通过。CI 的 Linux 环境可进一步验证全量结果。

实际环境验证

在 MoviePilot v2.15.6 容器中使用真实配置 media_category=日番,日韩剧 验证:

  • 日番 → 自动匹配“动漫”目录
  • 日韩剧 → 自动匹配“动漫”目录
  • 目标目录均为 /media/link/anime

PR-Agent 摘要

🤖 Generated by PR Agent at 54cad2a

  • 支持目录配置匹配多个媒体类别
  • 兼容中英文逗号及空格
  • 下载与整理流程复用匹配逻辑
  • 新增多类别匹配回归测试

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR-Agent Code Review

本次变更将目录媒体类别匹配扩展为支持半角或全角逗号分隔的多个类别,并统一应用于自动整理和按保存路径查找流程,同时补充了对应回归测试。未发现由本次变更引入的具体行为缺陷,无需提出审查意见。

审查提交:54cad2a

@jxxghp jxxghp closed this Sep 4, 2026
@jxxghp

jxxghp commented Sep 4, 2026

Copy link
Copy Markdown
Owner

应该配置多个目录,但目录路径可以一致。
同时 v2 不发版了。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants