Модуль:CallMW

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Документация

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

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

Тесты модуля

Все тесты успешно пройдены.

test_mw:

Текст Ожидаемое значение Фактическое значение
✔ {{#invoke:callMW|mw|wikibase|getEntityIdForCurrentPage}} Q101582886 Q101582886
✔ {{#invoke:callMW|mw|wikibase|getEntityIdForTitle|Октиллион}} Q11797611 Q11797611
✔ {{#invoke:callMW|mw|wikibase|getEntityIdForTitle|Octillion|enwiki}} Q11797611 Q11797611
✔ {{#invoke:callMW|mw|ustring|codepoint| }} 32 32


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

  • {{Wikidata-redirect}}
  • {{Falseredirect}}
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