Модуль:ExtBook: различия между версиями

Материал из Поле цифровой дидактики
Нет описания правки
Нет описания правки
 
(не показана 1 промежуточная версия этого же участника)
Строка 1: Строка 1:
local p = {}
local p = {}


function p.main(frame)
function p.getData(frame)
    -- URL к CSV файлу
     local url = "https://corgis-edu.github.io/corgis/datasets/csv/classics/classics.csv" -- Замените на ваш URL
     local url = "https://corgis-edu.github.io/corgis/datasets/csv/classics/classics.csv"
    local status, data = pcall(mw.ext.externalData.getExternalData, url)
      
      
     -- Загрузка данных
     if not status then
    local data = mw.ext.externalData.getExternalData(url)
        return "Ошибка при получении данных: " .. tostring(data)
    end


    -- Проверка на наличие данных
     if type(data) ~= "table" then
     if not data
         return "Ожидалась таблица, но получена: " .. type(data)
    -- or #data == 0
    then
         return "Нет данных для отображения."
     end
     end


     -- Формирование таблицы для вывода
     -- Пример обработки данных
     local output = "{| class='wikitable'\n|-\n! Название !! Автор !! Год\n"
     local result = ""
 
    for key, value in pairs(data) do
        result = result .. key .. ": " .. value .. "\n"
    end


     return output
     return result
end
end


return p
return p

Текущая версия от 19:27, 2 января 2025

Для документации этого модуля может быть создана страница Модуль:ExtBook/doc

local p = {}

function p.getData(frame)
    local url = "https://corgis-edu.github.io/corgis/datasets/csv/classics/classics.csv"  -- Замените на ваш URL
    local status, data = pcall(mw.ext.externalData.getExternalData, url)
    
    if not status then
        return "Ошибка при получении данных: " .. tostring(data)
    end

    if type(data) ~= "table" then
        return "Ожидалась таблица, но получена: " .. type(data)
    end

    -- Пример обработки данных
    local result = ""
    for key, value in pairs(data) do
        result = result .. key .. ": " .. value .. "\n"
    end

    return result
end

return p