Модуль:ExtDigida
Материал из Поле цифровой дидактики
Для документации этого модуля может быть создана страница Модуль:ExtDigida/doc
local p = {}
function p.main(frame)
local args = frame.args
local csvUrl = args.url or 'YOUR_CSV_URL_HERE' -- Замените на URL вашего CSV файла
-- Получаем данные из CSV через ExternalData
-- Предполагаем, что CSV имеет заголовки: author_id,pageid,page_title,category
local data, errors = mw.ext.externalData.getWebData {
url = csvUrl,
format = 'CSV with header'
}
if errors then
return '<strong>Ошибка загрузки данных:</strong> ' .. table.concat(errors, '<br>')
end
if not data or #data == 0 then
return 'Нет данных для отображения.'
end
-- Строим wikitable
local tableHtml = '{| class="wikitable sortable"\n! author_id !! pageid !! page_title !! category\n'
for i, row in ipairs(data) do
tableHtml = tableHtml .. string.format('|-\n| %s || %s || %s || %s\n',
row.author_id or '',
row.pageid or '',
row.page_title or '',
row.category or ''
)
end
tableHtml = tableHtml .. '|}\n'
return tableHtml
end
return p
