Модуль:CallMW

Версия от 17:34, 8 апреля 2025; Pok (обсуждение | вклад) (Новая страница: «-- source: https://ru.wikipedia.org/wiki/Модуль:CallMW -- license: CC BY-SA 4.0 local p = {} function p.mw(frame) local moduleName = frame.args[1] local functionName = frame.args[2] local params = {} for key, value in ipairs(frame.args) do if key > 2 then table.insert(params, value) end end return mw[moduleName][functionName](unpack(params)) end return p»)

(разн.) ← Предыдущая версия | Подтверждённая версия (разн.) | Текущая версия (разн.) | Следующая версия → (разн.)

Функция mw позволяет вызывать служебные функции из mw:Extension:Scribunto/Lua reference manual#Scribunto libraries из шаблонов, а не только из модулей:

  • Код в модуле: mw.wikibase.getEntityIdForTitle('Octillion', 'enwiki')
  • Код в шаблоне: {{#invoke:callMW|mw|wikibase|getEntityIdForTitle|Octillion|enwiki}}

Примеры использования


-- source: https://ru.wikipedia.org/wiki/Модуль:CallMW
-- license: CC BY-SA 4.0 

local p = {}

function p.mw(frame)
	local moduleName = frame.args[1]
	local functionName = frame.args[2]
	local params = {}
	for key, value in ipairs(frame.args) do
		if key > 2 then
			table.insert(params, value)
		end
	end
	return mw[moduleName][functionName](unpack(params))
end

return p