Александр Туниеков
С нами с 19 декабря 2015; Место в рейтинге пользователей: #158 часов назад
В vesp долго переезжать. Нету модульности никакой и с авторизацией, в смысле с разграничением прав, там Василий особо не напрягался :-)
Плюсы и минусы Vue и gtsAPI 17
Вчера в 15:41
Параметр sortby сортирует по полю в базе. У вас в базе нет поля «pagetitle:getSurname», есть только «pagetitle».
Я бы предложил фамилию записать в ...
Модификатор сортировки pdoResources по pagetitle 2
Вчера в 13:01
Забыл написать версия modx 3.0.5
И сама форма
<form data-si-form="FormSlider" data-si-preset="slider_form" data-si-event=&quo...
[SendIt 2.0.0] Пагинация и обновлённая загрузка файлов 20
Вчера в 09:34
В критерия должны передаваться параметры where это все что можно передать
т.е.
возможно только так
$criteria = array(
"article:LIKE =>...
Массовое удаление 7
25 ноября 2024, 22:34
Вдруг кому понадобится… Прописать TV параметр в источнике файлов для MIGX можно так (для примера TV `ln`):
[[!migxResourceMediaPath...
Источник файлов и migx 6
25 ноября 2024, 21:01
Привет
Подскажи, пжл как добавить поля из компонента msFieldsmanager?
Скрин
msPre - фильтры по опциям minishop2 11
25 ноября 2024, 20:03
А как добавить если чекбоксы?
msPre добавление кастомного поля (списка с автодополнением) 4
25 ноября 2024, 08:00
ну тогда groupby и having«query» принимает все параметры pdoFetch и в нем есть и groupby и having. Пример навскидку:
"query":{
&quo...
Кейс gtsAPI. CRUD пользователей на фронте 2
24 ноября 2024, 20:31
Правильный вариант из текущей документации такой:
{set $condition = 1}
{switch $condition}
{case 0, 1, 2}
сработае...
Конструкция switch case без break в Fenom 6
Мне getObject нужен. Чтоб проверки доступа, все обработанные поля были. И чтоб не писать простыню кода каждый раз когда какое-то значение из базы нужно.
$pdo->getArray limit добавляет, но писать ['pagetitle'] раздражает. ->pagetitle короче. И создавать $pdo каждый раз надо.
Ваш modHelpers object limit ставит. И код писать короче. Но ради 1 функции грузить кучу кода явно не стоит. Загрузки 516. Не слишком популярная библиотека. Код написанный другим человеком и так бывает сложно разобрать и, чтоб добавить еще не популярный синтаксис должна быть веская причина. Ну и с первого раза библиотека просто не понравилась.
Так почему в getObject limit=1 не добавили? Кто-нибудь знает?
вот добавить $criteria->limit(1) после этой строки github.com/modxcms/revolution/blob/932472d65793a305bd8c971f21032f24068258ad/core/xpdo/om/xpdoobject.class.php#L423
и этой github.com/modxcms/revolution/blob/932472d65793a305bd8c971f21032f24068258ad/core/model/modx/modaccessibleobject.class.php#L96
лог запросов mysql
SELECT… FROM `modx_site_content` AS `modResource` WHERE `modResource`.`parent` = 1
То есть, getObject получает все, а потом грузит первую запись :-(.
@Сергей Шлоков А зачем так сделано?? Память же все отстальное занимает.
И как теперь жить-то :-(. И limit через $query = $modx->newQuery долго добавлять.
2. Так контент и в tv и msProductData например. Все импортировать заколебешься.
3. Ну я против того чтобы стаскивать. У самого есть платные компоненты.
4. Хм… Абы какой контент не подойдет. Так что не уверен что найду.
4.1. Компонент, думаю, мне особо не нужен, но, вообще, оптимизацию сайта у меня спрашивают и понимать насколько с этим PageSpeed справляется вообще нужно.
То есть, попадется задача на оптимизацию и мне придется, либо покупать кота в мешке на не малые деньги, либо тырить. Вообще не айс :-(.
2 импорт базы сломает тестируемый компонент
3 А если заморачиватся, чтоб не сломало, то тогда уж проще стащить компонент с тестового сайта и спокойно протестить у себя.
4 Хотя рабочий контент и нужен для теста, но вообще-то не думаю, что владельцы сайта одобрят, чтоб их контент перетаскивался на какой-то левый сайт.
Ну 1 контент разбросан по tv и шаблонам. То есть даже 1 страницу можно долго копировать.
И 2 под контентом имел в виду контент всего сайта.
Интересно как можно запихать рабочий сайт на тестовый, чтоб протестить компонент.
Выполняется не быстрей, чем
И у тебя в файле $file уже типо кеш. Зачем его кешировать еще раз на странице. Наверно, можно было 2 ресурс, который показывается, сделать статическим и прикрепить к нему $file.
И getCollection и getObject по $criteria готовят запрос в mysql. Для такого критерия он будет примерно таким для getCollection и $getted_id=2:
А getObject просто добавит limit=1
Данные обрабатывает сортирует mysql сервер. Он это делает эффективнее, чем мы можем сделать в php. И в getObject они точно не сортируются.
Так вот, отличие getCollection и getObject ДЛЯ ДАННОГО ПРИМЕРА то, что getCollection заберет все записи с базы и займет кучу памяти, а getObject только одну и памяти понадобиться гораздо меньше.
И getCollection и getObject кроме запроса в mySQL делают, что-то еще, например проверяют есть ли доступ у юзера к объекту, но что конкректно я не разбирался и разбираться, в общем-то, не собираюсь :-). Только если что-то не так пойдет смотрю код функций. Важно только то, что getCollection и getObject выгружают данные с базы в виде xpdo объекта. Делать mySQL запросы напрямую не слишком удобно. Но если скрипт тупит или по памяти вылетает, то использую вместо getCollection getIterator или $modx->query($sql).
sql вам знать надо! учите.
Придумать бы, для подобный компонентов, какой-нибудь вариант покупки типа триала.
Выводим в плейсхолдеры и
Может конечно решение получше, но мне только такое пришло в голову.
Можно же просто так
Все равно и getCollection и getObject просто готовят запрос mysql Ну грубо говоря :-(
1.7729151 немного. но почему-то временами втупляет до 10с