匿名
未登录
中文(中国大陆)
登录
深色模式
「荏苒之境」
搜索
查看“︁模块:Phrases/Query”︁的源代码
来自「荏苒之境」
命名空间
模块
讨论
更多
更多
页面操作
阅读
查看源代码
历史
清除缓存
←
模块:Phrases/Query
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
local translation = require("Module:Template translation") local utils_str = require("Module:Utils/String") local cargo = mw.ext.cargo local escape_sql = utils_str.escape_sql local query = {} local function get(table_name, language, config) local theme_order_by = config.theme_order_by and escape_sql(config.theme_order_by) local phrase_order_by = config.phrase_order_by and escape_sql(config.phrase_order_by) local theme_limit = config.theme_limit local phrase_limit_per_theme = config.phrase_limit_per_theme local themes = cargo.query("PhraseThemes", "Theme", { where = "PhraseTable='"..table_name.."'", orderBy = theme_order_by, limit = theme_limit }) local r = {} for _, theme_entry in ipairs(themes) do local theme = theme_entry.Theme local phrase_query = cargo.query(table_name, "Phrase", { where = "Theme='"..escape_sql(theme).."' AND Language='"..escape_sql(language).."'", orderBy = phrase_order_by, limit = phrase_limit_per_theme, }) local phrases = {} for _, entry in pairs(phrase_query) do phrases[#phrases+1] = entry.Phrase end r[#r+1] = {theme, phrases} end return r end local function get_language(frame) local parent_frame = frame:getParent() local language = translation.getCurrentLanguageSubpage() return (language == nil or language == "") and "zh-cn" or language end query.get = get query.show_ul = function(frame) local args = frame.args local table_name = args.table local language = get_language(frame) local result = get(table_name, language, args) local t = {"<ul>"} for i = 1, #result do local entry = result[i] local theme, phrases = entry[1], entry[2] for j = 1, #phrases do t[#t+1] = "<li>" t[#t+1] = phrases[j] t[#t+1] = "</li>" end end t[#t+1] = "</ul>" return table.concat(t) end query.show_ul_sections = function(frame) local args = frame.args local table_name = args.table local language = get_language(frame) local result = get(table_name, language, args) local t = {} for i = 1, #result do local entry = result[i] local theme, phrases = entry[1], entry[2] t[#t+1] = "<p><b>" t[#t+1] = theme t[#t+1] = "</p></b><ul>" for j = 1, #phrases do t[#t+1] = "<li>" t[#t+1] = phrases[j] t[#t+1] = "</li>" end t[#t+1] = "</ul>" end return table.concat(t) end return query
该页面使用的模板:
模块:Phrases/Query/doc
(
查看源代码
)
返回
模块:Phrases/Query
。
导航
导航
最近更改
随机页面
特殊页面
模板列表
wiki工具
wiki工具
Cargo数据
页面工具
页面工具
用户页面工具
更多
链入页面
相关更改
页面信息
页面日志