Как добавить множество элементов в базу данных с помощью MODX-процессора - PullRequest
0 голосов
/ 27 марта 2019

У меня есть процессор загрузки файлов с выводом массива. Как я могу добавить этот массив в базу данных?

Это код моего процессора:

class ModCLJsonUploadProcessor extends modProcessor {
    public $languageTopics = ['modcl'];

    public function process() {
        $file = fopen($_FILES['json-file']['tmp_name'], 'r');
        $json = fread($file, $_FILES['json-file']['size']);
        $objs = json_decode($json);
        $english = array();
        for ($i = 0; $i < count($objs); $i++) {
            $english[$i] = $objs[$i]->{'name'};
        }

        return $this->success($english);
    }
}

return 'ModCLJsonUploadProcessor';

Я пытался использовать нативный modObjectCreateProcessor, но он не поддерживает массивы.

1 Ответ

0 голосов
/ 21 июля 2019

Для сохранения элементов в базе данных с использованием процессора рекомендуется создать схему и сохранить данные в виде объектов в базе данных. Это позволяет вам впоследствии получать элементы (объекты) в других процессорах или фрагментах, используя xPDO.

Для базового объяснения / как создать схему и взаимодействовать с пользовательскими объектами, ознакомьтесь с документом «Разработка дополнительного в MODX Revolution» здесь

...