模块:Db
本模块为自动表核心功能程序,根据输入的信息自动筛选数据。
数据库储存在Module:db_song,通过Template:db可以调用数据库中的信息,也可以通过Template:songlist生成自动表格。
local p = {}
function p.value(frame)
local args = frame.args
-- 遍历所有参数,查找模块名和键名
for paramName, paramValue in pairs(args) do
-- 检查参数格式是否为"模块名=键名"
if string.find(paramName, "=") then
local moduleName, key = string.match(paramName, "(.+)=(.+)")
if moduleName and key then
-- 动态加载指定模块
local success, moduleData = pcall(require, 'Module:' .. moduleName)
if success and moduleData then
-- 返回对应键的值
return tostring(moduleData[key] or '键不存在')
else
return '模块不存在或加载失败'
end
end
end
end
return '请使用格式: 模块名=键名'
end
return p