“模块:Inherit”的版本间的差异
跳到导航
跳到搜索
(建立内容为“p = {} function p.keys_to_table(set) local res = {} for k, v in ipairs(set) do table.insert(set, k) end return res end function p.query_…”的新页面) |
(没有差异)
|
2020年12月31日 (四) 16:16的版本
{{#invoke:Inherit|inherited_lists |name=页面名称 |properties=属性1,属性2,属性3 |anchor_property=页面标题属性 |parent_property=父类属性名称 |parent_title=父类标题 |parents=父类1,父类2,父类3 |children_title=子类标题(可选) |属性1_title=属性1的标题 |属性1_values=标签1,标签2 |属性2_title=属性2的标题 |属性2_values=标签3,标签4 |属性3_title=属性3的标题 |属性3_values=标签5,标签6 |属性1_reversed=属性2 |属性2_reversed=属性1 }}
p = {} function p.keys_to_table(set) local res = {} for k, v in ipairs(set) do table.insert(set, k) end return res end function p.query_inherited_property(anchor_property, query_property, parent_list) local results = {} for idx, parent in ipairs(parent_list) do local anchor_query = "[["..anchor_property.."::"..parent.."]]" local property_query = "[[" .. query_property .. "::+]]" local content_query = "?"..query_property local query = anchor_query .. property_query .. "|" ..content_query .. "|format=plainlist" local res = mw.smw.getQueryResult(query) for j, r in ipairs(res.results) do for k, t in ipairs(r.printouts[query_property]) do results[t] = true end end end return results end return p