本模块会将模块:角色链接的数据库模块中的角色数据转化为wiki表格的行。
imageFormat参数)、要预览的各段代码(若填写了匿名参数,每个匿名参数都会使表格增加一列)参数说明:
database:要展示的数据库,同主模块。imageFormat:图像列的文件名格式,同主模块。%s代替角色名。可添加nowiki标签。
{| class="wikitable mw-collapsible mw-collapsed collapsed sortable"
! colspan=4 | 数据浏览
|-
! 角色
! class="unsortable" | 条目
! class="unsortable" style="width:60px" | 头像
! class="unsortable" | 模板效果
{{#invoke:角色链接/预览|main|database=原神
|imageFormat=Genshin charaicon %s.png{{!}}60px
|<nowiki>{{原神角色链接|%s}}</nowiki>
}}
|}local getArgs = require('Module:Arguments').getArgs
local p = {}
function p.main(frame)
local args = getArgs(frame)
local data = mw.loadData('Module:角色链接/data/' .. args.database)
local result = {}
for key, value in pairs(data) do
local row = '|-\n|' .. key .. '|| [[' .. (value[2] or value.link) .. ']]'
if args.imageFormat then
if value.image then
image = string.format(args.imageFormat, value.image)
row = row .. '||' .. string.format('[[File:%s]]', image)
else
row = row .. '|| '
end
end
local i = 1
while args[i] do
tpl = mw.text.unstripNoWiki(args[i])
tpl = mw.text.decode(tpl)
row = row .. '||' .. frame:preprocess(string.format(tpl, key))
i = i + 1
end
table.insert(result, row)
end
return table.concat(result, '\n')
end
return p