模块:Dictionary/Complete.lua

来自「荏苒之境」
Sicusa留言 | 贡献2025年8月4日 (一) 17:25的版本

此模块的文档可以在模块:Dictionary/Complete.lua/doc创建

local dict_views = require("Module:Dictionary-Views.lua")
local DICT_TABLE = dict_views.TABLE

local cargo = mw.ext.cargo

local complete = {}

complete.show = function(frame)
    local language = frame.args.language
    local dictPage = frame.args.dictionaryPage

    local rows = cargo.query(DICT_TABLE, "Spelling,Definition,Extra", {
        where = string.format([[Language="%s"]], language),
        limit = 100000
    })

    local word_start = rows[1].Spelling == "__META__" and 2 or 1
    local template_head = "{{词典条目|语言标识码="..language.."|拼写="

    for i = word_start, #rows do
        local row = rows[i]
        local entry_page = dictPage.."/"..row.Spelling
        row.Spelling = "[["..entry_page.."|"..row.Spelling.."]]"
        mw.site.createPage(entry_page, template_head..row.Spelling.."}}")
    end

    return dict_views.vocabulary(rows)
end

return complete