Aliaksandr
ну и получается, что страница не кешируется ?
Кэшируется не страница, а результат выполнения сниппетов
Ilya
а страница?
Ilya
раньше ведь было такое
Aliaksandr
Сейчас такого нет, html-версия страницы в папке assets/cache не создается
Ilya
понял
Alexander
Сейчас такого нет, html-версия страницы в папке assets/cache не создается
😁ну и как бы мы это узнали если бы добрый веббер нам не рассказал.
Aliaksandr
Есть шаблон на блейде, в нем вызываешь {!! $modx->runSnippet('DocLister', $params, 0 !!}} - это аналог кэшированного вызова [[DocLister]]
Alexander
😁
Aliaksandr
Ну или скобки не {!!... !!} , а {{ ...}} если внутри нет html и надо экранировать данные
Aliaksandr
но так ведь делать не надо! надо через контроллеры
Это в следующей серии, там платный доступ 😁
Ilya
а если надо некешируемый вызов ?
Ilya
просто false ?
Aliaksandr
В теории в контроллере получаешь все данные в виде переменных, эти данные там же кэшируешь (если это надо) - а в шаблонизаторе просто расставляешь их в нужные места, там уже ничего не кэшируется
Aliaksandr
просто false ?
Просто не пишешь 0 в вызове
Ilya
понял
Ilya
а ещё, в блейде как-то можно объявлять переменные для подсказки в phpStorm?
Aliaksandr
0 - это срок хранения кэша в секундах, если 0 - значит постоянно, но можно и 3600 - на часок и любую другую числу туда
Aliaksandr
Если ничего нет - значит некэшированный вызов
Ilya
Alexander
звучит страшно
Aliaksandr
4-й параметр - ключ. Автоматом как и раньше берется по $_GET, но емли тебе не надо миллион верхних меню, задаешь после нуля единый ключ 'topMenu' и оно у тебя одно на весь сайт
Aliaksandr
а ещё, в блейде как-то можно объявлять переменные для подсказки в phpStorm?
Это все надо делать в контроллере, блейд чисто для вывода. Просто для быстрого старта, чтоб сразу не испугаться, можно и там вызывать сниппет. Так то там можно объявить хоть кусок пхп через @php .... @endphp и внутри что угодно сделать. Но это плохо 😎😁
Ilya
ну, для первого раза норм
Aliaksandr
ну, для первого раза норм
Т.е. для начала, чисто для перехода в блейд, просто меняется синтаксис, это не сложно.
Aliaksandr
Вообще {{ $out }} и {!! $out !!} это аналог echo htmlentities($out) и echo $out. Т.е. надо тебе там текущая дата , условно, берешь и пишешь {{ date("d.m.Y") }}
Aliaksandr
Так проще понимать что происходит ))
Ilya
спасиб )
Serguei
Господа, assets/lib/APIHelpers.class.php
Такой класс есть в /core/vendor/pathologic/modxapi/src, если добавить соответствующую зависимость через composer.
Pathologic
это не такой класс
Alexander
Коллеги, например беларусы и украинцы, добавил в editDocs возможность смены языка интерфейса у модуля. Есть рус. и англ. давайте добавим белорусский и украинский, если конечно оно надо) файл с переводом хранится здесь (см. скрин) и включается в зависимости от языка админки. Файл должен также называться как ваш включенный в админке.
Pathologic
а мог использовать Helpers\Lexicon, было бы проще
Pathologic
и в шаблонах работало бы [%%]
Alexander
а мог использовать Helpers\Lexicon, было бы проще
если б знал как, наверно бы использовал. Но что то как то не довелось. Спросил у веббера как лучше) он ничего не ответил.
Alexander
и в шаблонах работало бы [%%]
так я через DLTemplate и плейсхолдеры
Pathologic
https://github.com/Pathologic/FormLister/blob/master/assets/snippets/FormLister/core/controller/Form.php#L42
Pathologic
https://github.com/Pathologic/FormLister/blob/master/assets/snippets/FormLister/core/FormLister.abstract.php#L1191
Aliaksandr
В трешке вроде язык просто ru, без utf8- приставки )
Pathologic
да и в 1.4 тоже
Alexander
Ilya
господа, а можно как-то в блейд в сниппет передать php чанк ?
Ilya
при вызове runSnippet
Andrey
Что за php чанки такие? Опять чёт проебал.
Ilya
партиалы, шаблоны шаблоны из базы вынес в файлы
Ilya
запускаю сниппет, и надо как-то передать шаблон в него для вывода
Ilya
тот же doclister
Ilya
вот Дмитрий в видео показывал
Ilya
по такой же схеме использовать ?
Pathologic
схуяле?
что ты мне файлы показываешь
Alexander
что ты мне файлы показываешь
а что надо показать?
Alexander
речь вроде про файлы была
Axenia
VitaliyLabenskiy (254.2) увеличил карму Pathologic93 (6762.69)
Pathologic
речь вроде про файлы была
ну я не понимаю, при чем тут эти файлы, которые ты показываешь
Andrey
по такой же схеме использовать ?
Ну а попробовать если?
Pathologic
это?
если тебе надо язык, то getConfig('lang_code') вернет язык
Ilya
Andrey
Хз чё там. Такое бывает когда выводится переменная, а по факту в ней массив.
Am
вот ошибка
Тут же написана ошибка. Почему не возникает желания запихнуть хотя бы в гугл переводчик чтобы понять что там? "Объект класса не может конвертироваться в строку". Нужно работать с данными как с объектом класса или привести в массив. Т.е. objectData->myData; или arrayData['myData'];
Ilya
я понимаю, что так надо но непонятно, как с этим работать с самим ево есть сниппет, есть параметры, есть нововведения
Ilya
ошибка может быть как в том, что сниппет не поддерживает работу с блейдом, так и просто в чём-то другом например, непрвильно использую и нужно другой способ использовать о котором неизвестно
Ilya
я поэтому и спрашиваю здесь, т.к. в том же гугле ответа я не получу
Pathologic
применительно к $modx->runSnippet
Am
ну и что это даст?
Читать ошибку это даст и понимать направление смотрение, а не гадания и спрашивания тут.
Pathologic
вот я не вижу никакого направления смотрения в данном случае
Ilya
есть машина, есть особенности двигателя, есть определенные методы его ремонта или обслуживания а ты предлагаешь мне идти смотреть как делать по примеру жиги
Pathologic
только лишний раз убеждаюсь, что блейд это адский высер
Ilya
типа двитагель же, значит любой способ подойдёт
Am
вот я не вижу никакого направления смотрения в данном случае
Т.е. то что тут объект используют как строку это ничего не говорит Вам?
Pathologic
где в $modx->runSnippet() объект используется как строка
Ilya
тут может просто парсер не сработал
Pathologic
я бы понял еще, если бы там был параметр, который заставляет вернуть объект
Am
А посмотреть что в main.blade.php находится нельзя?
Pathologic
посмотреть-то можно, но зачем нужен такой шаблонизатор, если нужно еще дебажить код, который он высрал
Am
Это десятый разговор. Он просто есть и плохой или хороший не обсуждается. Есть ошибка, ее нужно разобрать и найти причину.