MC 百科映射维护整合包和模组在选料系统里的权威名称。整合包和模组没有主站资源表,它们的名称来自 MC 百科的条目,通过这里的映射表维护。
入口在侧边栏「选料」下的「MC 百科映射」,路径 /sel/mcmod。
掌料人及以上能进入。
为什么需要这份映射
选料的资源类型除了主站已有的资源包、光影包、地图,还包括整合包和模组。这两类资源在主站没有对应的资源表,数据存在选料自己的 sel_external_resource 表里。
映射表的每条记录包含三项:类型(整合包或模组)、MC 百科 ID、资源名称。类型加 MC 百科 ID 唯一确定一个资源,资源名称是这套资源在选料里展示的名字。
用户提交整合包或模组的投稿时,选料模块会按用户提供的 MC 百科 ID 查这张映射表,找到对应的名称。找不到时投稿的提交会被拒绝,因此映射表是投稿的前置条件。
整体布局

页面顶部是页头。
下方是筛选栏,包含类型下拉、名称或 MC 百科 ID 的搜索框,以及重置和新增映射按钮。
再往下是列表卡片。
列表
列表按类型和 MC 百科 ID 排序,每行显示以下内容。
ID 是映射记录的主键,在选料系统内部使用。
类型标签区分整合包和模组。
MC 百科 ID 是 mcmod.cn 上的条目 ID,右侧带一个外链图标,点击会在新标签页打开对应的 MC 百科页面。整合包跳到 modpack 路径,模组跳到 class 路径。
资源名称是该资源在选料里展示的名字。
创建时间显示映射的建立时间。
操作列包含「编辑」和「删除」。
筛选
类型下拉可选全部、整合包、模组。
搜索框按资源名称或 MC 百科 ID 模糊匹配。输入 MC 百科 ID 时可输入完整数字,也可只输入其中一段。
点「重置」清空筛选条件。
新增映射
点筛选栏右侧的「新增映射」按钮,打开模态框。
模态框包含三个字段。
类型选择整合包或模组。创建后不可修改。
MC 百科 ID 是必填的正整数,对应 mcmod.cn 上条目的数字 ID。
资源名称是必填项,建议与 MC 百科上的条目名称保持一致。
保存时后台会检查同类型下是否已存在相同的 MC 百科 ID。重复时拒绝创建并提示已存在的映射记录。
新增的映射不会影响任何现有投稿,因为没有投稿引用它。
编辑映射
点列表中的「编辑」按钮,打开模态框。
可修改的字段只有资源名称。类型和 MC 百科 ID 都置为只读。这样设计的原因是映射的类型和 ID 是资源在系统内部的标识,修改会导致引用关系断裂。
保存时后台会同步更新所有引用该映射的投稿记录的资源名称。这是映射模块的关键行为,详见后面的章节。
删除映射
点列表中的「删除」按钮,二次确认后删除。
删除前后台会检查该映射是否被投稿引用。被引用时拒绝删除,并提示引用该映射的表名。因此正在使用的映射不会因误操作而被删除。
未被引用的映射可以删除。删除是物理删除,记录从数据库中移除,不可恢复。
映射名称的同步机制
映射表是整合包和模组名称的权威来源。当资源名称发生变化时,系统会自动把最新名称同步到所有引用该映射的投稿记录中。
同步的目标表包括:
选料帧率投稿主表和审核表。
选料测评文章主表和审核表。
这四张表里所有 resource_type 为 modpack 或 mod 且 resource_id 等于该映射 ID 的记录,其 resource_name 字段都会更新为最新值。
同步只修改 resource_name 一个字段,不改动投稿的内容、审核历史或其他数据。因此同步是安全的,不会造成数据丢失。
同步在映射名称保存时自动执行,管理员不需要手动触发。
同步的意义
整合包和模组名称在 MC 百科上可能被作者修改,或者中文名称的翻译版本在社区中发生变化。这类变化如果只更新映射表而不更新投稿,会导致同一资源在系统里出现两个名称,用户看到的名称和后台的名称不一致。
同步机制保证投稿记录和映射表始终一致。用户在主站查看自己的投稿时,显示的是映射表里的最新名称,而不是投稿时的旧名称。
引用检查的范围
引用检查覆盖四张表,也就是同步的目标表。只要其中任意一张表存在引用,该映射就不能删除。
若确实需要删除一个已被引用的映射,处理顺序是先处理掉所有引用。可选的方式有几种:让用户重新提交投稿并选择新的映射;通过数据库直接清理引用记录;或者保留映射,仅修改名称为新资源的名称,相当于把映射重定向到新资源。
具体采用哪种方式取决于实际场景。直接操作数据库需谨慎,建议先备份相关记录。
与选料审核的关系
选料审核工作台在处理整合包或模组的投稿时,会读取映射表里的权威名称。
审核通过时,投稿的 resource_name 会被纠正为映射表的当前名称。因此即使提交时填写的名称有误,通过审核后进入主表的名称也是正确的。
审核列表和详情页显示的资源名同样来自映射表,保证审核员看到的就是最终会进入主表的名称。