Open yuju520 opened 5 months ago
3189552762 = "/media/bilibili_NAS" 这个是我的路径,数字是你的收藏夹ID,就是网页链接find=数字 /media是默认装载路径,在此路径下,你随便写,bilibili_NAS,我自己编的
3189552762 = "/media/bilibili_NAS" 这个是我的路径,数字是你的收藏夹ID,就是网页链接find=数字 /media是默认装载路径,在此路径下,你随便写,bilibili_NAS,我自己编的
可能我没有描述得很清楚,我需要按不同视频的不同up主的建立文件夹,而不是建立一个固定名称的文件夹。
我个人不推荐这样使用,因为 UP 主随时可能会重命名,导致同一个 UP 主发布的视频分布到了两个文件夹中。这也是我实现演职人员功能时使用 user id 而非 user name 区分用户的原因。
当前程序没有办法做到这一点。目前程序的路径逻辑是首先对 video_name
进行模板替换,替换完成后拼接在收藏夹的存储目录之后。这种实现可能会有一个问题:如果视频名字中包含 "/",而用户在 video_name 中使用了 title,会导致程序意外地创建出多级目录。为了规避这个问题,程序会对完成模板替换后的 videoname 做 filenamify 处理,将其中的特殊字符替换成文件名支持的一般字符,举例来说,会将 "/" 替换为 ""。这同时也断绝了用户将 video_name 自定义为 xxx/xxx
而实现多级目录的可能。
目前我想到的解决方法是专门为模板添加一个 filenamify 方法,这样就可以由用户自己定义如何对路径进行处理,如允许用户将 video_name 自定义为 {{ upper_name }}/{{ filenamify title }}
来达到既支持多级目录,又能避免非法字符的目的。或者也可以将 filenamify 的时机移动到模板替换之前,提前把这些自定义值替换成和文件名称兼容的格式,剩下的部分交给用户自己发挥。
目前还没想好具体使用哪一种,不过总之会在近期支持这个功能,到时候我会再回复这个 issue。
我个人不推荐这样使用,因为 UP 主随时可能会重命名,导致同一个 UP 主发布的视频分布到了两个文件夹中。这也是我实现演职人员功能时使用 user id 而非 user name 区分用户的原因。
针对原始需求的回答
当前程序没有办法做到这一点。目前程序的路径逻辑是首先对
video_name
进行模板替换,替换完成后拼接在收藏夹的存储目录之后。这种实现可能会有一个问题:如果视频名字中包含 "/",而用户在 video_name 中使用了 title,会导致程序意外地创建出多级目录。为了规避这个问题,程序会对完成模板替换后的 videoname 做 filenamify 处理,将其中的特殊字符替换成文件名支持的一般字符,举例来说,会将 "/" 替换为 ""。这同时也断绝了用户将 video_name 自定义为xxx/xxx
而实现多级目录的可能。目前我想到的解决方法是专门为模板添加一个 filenamify 方法,这样就可以由用户自己定义如何对路径进行处理,如允许用户将 video_name 自定义为
{{ upper_name }}/{{ filenamify title }}
来达到既支持多级目录,又能避免非法字符的目的。或者也可以将 filenamify 的时机移动到模板替换之前,提前把这些自定义值替换成和文件名称兼容的格式,剩下的部分交给用户自己发挥。目前还没想好具体使用哪一种,不过总之会在近期支持这个功能,到时候我会再回复这个 issue。
感谢大佬解答并关注这个问题,期待后续的更新🙏
类似想要建立一个“up主/视频名称”的双层文件夹我应该如何写配置文件呢