Difference between revisions of "Module:Data"

From blackwiki
Jump to navigation Jump to search
blackwiki>Jackmcbarn
(create helper module to get values from a data module)
 
blackwiki>Jackmcbarn
(redo how this works completely)
Line 1: Line 1:
local p = {}
+
local mt = {}
  
function p.main(frame)
+
function mt.__index(t, k)
local data
+
return function(frame)
for k, v in ipairs(frame.args) do
+
local data = mw.loadData(k)
if k == 1 then
+
for _,v in ipairs(frame.args) do
data = mw.loadData('Module:' .. v)
 
else
 
 
data = data[v]
 
data = data[v]
 
end
 
end
 +
return data
 
end
 
end
return data
 
 
end
 
end
  
return p
+
return setmetatable({}, mt)

Revision as of 02:56, 7 October 2014

This module allows wikitext to read values from data modules.

Usage

{{#invoke:Data|Module:ModuleName|key1|key2|key3|...}}

Read data value key1.key2.key3 from Module:ModuleName.


local mt = {}

function mt.__index(t, k)
	return function(frame)
		local data = mw.loadData(k)
		for _,v in ipairs(frame.args) do
			data = data[v]
		end
		return data
	end
end

return setmetatable({}, mt)