Mitriy
Заголовок, краткое описание - копируется в отдельную таблицу
да, наверное так будет проще и лучше, сразу писать значения оценок в отдельную таблицу
Sergey
Она и так пишется в таблицу для значений полей)
Sergey
http://joxi.ru/BA0wloaiq8pk52
Ну да, поле. Это не стандартный рейтинг
Mitriy
Отзывы - категория материалов Автосалоны - категория материалов Создам отдельную таблицу в базе данных с оценками, всем нужным и id автосалона И буду делать все что надо с ней
Mitriy
Ну да, поле. Это не стандартный рейтинг
Мне и отзывы надо будет отдельно выводить, поэтому выбрал матералы
hary
возвращаясь к вопросу апдейта бетки 5ки
hary
создал на основе их файла для обновлений https://update.joomla.org/core/test/list_test.xml - копию иксмл файла, дописал туда строчку про 5ку, <extension name="Joomla" element="joomla" type="file" version="5.0.-beta3" targetplatformversion="4.4" detailsurl="https://mysite.com/update.xml"/>
hary
а в этом апдейте по томуже принципу . ток эт отказывается работать
hary
делали же кажись росийский сервер для апдейтов,
Vladimir
возвращаясь к вопросу апдейта бетки 5ки
Альфа версии вообще не предназначены для обновления
hary
а как тогда накатить бету?
Vladimir
Никаких методов обновления нет
hary
уж сильно неохота заново на тесте все это загонять
Vladimir
а как тогда накатить бету?
Стереть альфу и установить бету
hary
поверху не пойдет?
Vladimir
поверху не пойдет?
Еще раз - эти версии не предназначены для обновления
Vladimir
На них не делают сайты
Vladimir
Это чисто для ознакомления
hary
я и не делаю сайт. там нет материалов, чисто для пощщупать
Vladimir
Какие проблемы то?
Vladimir
Делов на 10 минут
hary
с этим было еще проще https://github.com/JoomlaLABS/Joomla_Downloader/releases/tag/v1.0.2
Виталий
кто-нибудь знает почему она не видит этих изменений?
Виталий
ощущение будто url она берет с модуля, а не переопределения. главное, у меня перед глазами сайт на 3 джумле, где такое присвоение класса ссылкам работает
Виталий
Виталий
даже такое извращение попробовал) ну так то он не должен с брать откуда-то, я ломаю стандартное наименование
Виталий
главное основной файл переопределения он видит правильно, переопределенным
Виталий
Виталий
отбой, мне отдыхать пора
Виталий
совсем забыл что обычная ссылка это component
Mitriy
Добавляю периодически значения в таблицу БД fields_values: $value = (object) [ 'item_id' => $data['idsalon'], 'field_id' => 22, 'value' => $fullrating, ]; $this->db->insertObject('#__fields_values', $value); По факту получаю - http://joxi.ru/EA4wxoai05v7B2 Как сделать , чтобы item_id был уникальным, чтобы значение переписывалось, а не добавлялось новое?
Mitriy
И теперь не удаляется :)
Dmitry
item_id, это связь поля с объектом (материал, пользователь и т.п.)
Mitriy
создается новое ,а надо чтобы переписывалось старое, если есть уже
Dmitry
updateObject
Mitriy
updateObject
проверку надо делать?
Dmitry
проверку надо делать?
Насколько я помню, да
Dmitry
Если новое, то insert
Dmitry
Если существует, то update
Mitriy
а автоматом нет? :)
Mitriy
лишний запрос опять делат
Mitriy
Вообще перед каждым к БД нужно вставлять заноо это? $db = Factory::getDbo();
Dmitry
лишний запрос опять делат
Разве? Из контекста может быть понятно, новый объект или существует
Dmitry
не совсем
Всегда приходит готовый idsalon?
Dmitry
Тогда только доп проверка...
Mitriy
Если ранее не было инициализации, то да.
//Рейтинг автосалона $db = Factory::getDbo(); // Create a new query object. $query = $db->getQuery(true); // делаем выборку всех title тегов ID Автосалонов $query->select($db->quoteName(['item_id'])); // ID отзыва $query->from($db->quoteName('#__fields_values')); $query->where($db->quoteName('value') . " = ".$data['idsalon']); // ID автосалона $query->where($db->quoteName('field_id') . " = 18"); // поле ID автосалона // Reset the query using our newly populated query object. $db->setQuery($query); // Load the results as a list of stdClass objects (see later for more options on retrieving data). $allTagsSalons = $db->loadColumn(); // Массив всех тегов автосалонов $allTagsSalons = join(",",$allTagsSalons); $db = Factory::getDbo(); // Create a new query object. $query = $db->getQuery(true); // делаем выборку всех title тегов ID Автосалонов $query->select($db->quoteName(['value'])); // ID отзыва $query->from($db->quoteName('#__fields_values')); $query->where($db->quoteName('item_id') . "IN (" . $allTagsSalons . ")"); // ID отзывов $query->where($db->quoteName('field_id') . " = 17"); // поле оценки отзыва // Reset the query using our newly populated query object. $db->setQuery($query); // Load the results as a list of stdClass objects (see later for more options on retrieving data). $allTags = $db->loadColumn(); // Массив всех тегов автосалонов $fullrating = array_sum($allTags) / count($allTags); // Итоговый рейтинг автосалона
Dmitry
//Рейтинг автосалона $db = Factory::getDbo(); // Create a new query object. $query = $db->getQuery(true); // делаем выборку всех title тегов ID Автосалонов $query->select($db->quoteName(['item_id'])); // ID отзыва $query->from($db->quoteName('#__fields_values')); $query->where($db->quoteName('value') . " = ".$data['idsalon']); // ID автосалона $query->where($db->quoteName('field_id') . " = 18"); // поле ID автосалона // Reset the query using our newly populated query object. $db->setQuery($query); // Load the results as a list of stdClass objects (see later for more options on retrieving data). $allTagsSalons = $db->loadColumn(); // Массив всех тегов автосалонов $allTagsSalons = join(",",$allTagsSalons); $db = Factory::getDbo(); // Create a new query object. $query = $db->getQuery(true); // делаем выборку всех title тегов ID Автосалонов $query->select($db->quoteName(['value'])); // ID отзыва $query->from($db->quoteName('#__fields_values')); $query->where($db->quoteName('item_id') . "IN (" . $allTagsSalons . ")"); // ID отзывов $query->where($db->quoteName('field_id') . " = 17"); // поле оценки отзыва // Reset the query using our newly populated query object. $db->setQuery($query); // Load the results as a list of stdClass objects (see later for more options on retrieving data). $allTags = $db->loadColumn(); // Массив всех тегов автосалонов $fullrating = array_sum($allTags) / count($allTags); // Итоговый рейтинг автосалона
Ну в начале инициализация была, не надо повторять
Sergey
//Рейтинг автосалона $db = Factory::getDbo(); // Create a new query object. $query = $db->getQuery(true); // делаем выборку всех title тегов ID Автосалонов $query->select($db->quoteName(['item_id'])); // ID отзыва $query->from($db->quoteName('#__fields_values')); $query->where($db->quoteName('value') . " = ".$data['idsalon']); // ID автосалона $query->where($db->quoteName('field_id') . " = 18"); // поле ID автосалона // Reset the query using our newly populated query object. $db->setQuery($query); // Load the results as a list of stdClass objects (see later for more options on retrieving data). $allTagsSalons = $db->loadColumn(); // Массив всех тегов автосалонов $allTagsSalons = join(",",$allTagsSalons); $db = Factory::getDbo(); // Create a new query object. $query = $db->getQuery(true); // делаем выборку всех title тегов ID Автосалонов $query->select($db->quoteName(['value'])); // ID отзыва $query->from($db->quoteName('#__fields_values')); $query->where($db->quoteName('item_id') . "IN (" . $allTagsSalons . ")"); // ID отзывов $query->where($db->quoteName('field_id') . " = 17"); // поле оценки отзыва // Reset the query using our newly populated query object. $db->setQuery($query); // Load the results as a list of stdClass objects (see later for more options on retrieving data). $allTags = $db->loadColumn(); // Массив всех тегов автосалонов $fullrating = array_sum($allTags) / count($allTags); // Итоговый рейтинг автосалона
Вызов методов обновить нужно
Mitriy
при таком условии if ($finalRating) { $this->db->updateObject('#__fields_values', $value); // обновляем итоговый рейтинг в базе данных } else { $this->db->insertObject('#__fields_values', $value); // добавляем итоговый рейтинг в базу данных } Новое значение создает, но не обновляет потом
Mitriy
finalRating имеет такой формат: Array ( [0] => 1 )
Сергей Cave
@progreccor подскажи, пожалуйста сейчас верстаю шаблон страницы (не в прошке) и мне надо там вывести телефон из Revars как лучше сделать?
Сергей Cave
вопрос снят сделаю через языковую константу
Vladimir
Vladimir
а причем тут прошка или нет
Vladimir
вот делается три переменных чтобы тебе не страдать
Сергей Cave
я не про то мне вот тут надо вывести текст с телефоном
Сергей Cave
что-то типа такого
Mikhail
#вопрос Если я зохочу в jed поменять слаг плагина, я смогу это сделать или придётся новое расширение апрувить, с другим именем и слагом?
Akela
лишний запрос опять делат
У вас в списке блога ещё больше запросов ))
Михаил
Всем привет!
Михаил
Вопрос по РадикалФормс: где можно указать какие можно делать вложения в форму (типы файлов) и где можно запретить определенные типы файлов?
Vladimir
Вопрос по РадикалФормс: где можно указать какие можно делать вложения в форму (типы файлов) и где можно запретить определенные типы файлов?
Небезопасные типы файлов в радикалформс не загружаются. В остальном - определение типа файла задача на самом деле не тривиальная.
RINAT
https://habr.com/ru/articles/764472/
kkm
Google анонсировала новый веб-сканер Google-Extended, который позволяет контролировать, могут ли Bard и Vertex AI получать доступ к контенту на вашем сайте. Если вы не хотите, чтобы на ваших материалах обучались эти ИИ, то достаточно в robots.txt прописать следующее: User-agent: Google-Extended Disallow: / В своем блоге Google отписал так: "Сегодня мы анонсируем Google-Extended, новый элемент управления, который веб-издатели могут использовать для управления тем, помогают ли их сайты улучшать генеративные API Bard и Vertex, включая будущие поколения моделей, на которых основаны эти продукты. Используя Google-Extended для контроля доступа к контенту на сайте, администратор веб-сайта может решить, стоит ли помогать этим моделям искусственного интеллекта со временем становиться более точными и функциональными".
Akela
Google анонсировала новый веб-сканер Google-Extended, который позволяет контролировать, могут ли Bard и Vertex AI получать доступ к контенту на вашем сайте. Если вы не хотите, чтобы на ваших материалах обучались эти ИИ, то достаточно в robots.txt прописать следующее: User-agent: Google-Extended Disallow: / В своем блоге Google отписал так: "Сегодня мы анонсируем Google-Extended, новый элемент управления, который веб-издатели могут использовать для управления тем, помогают ли их сайты улучшать генеративные API Bard и Vertex, включая будущие поколения моделей, на которых основаны эти продукты. Используя Google-Extended для контроля доступа к контенту на сайте, администратор веб-сайта может решить, стоит ли помогать этим моделям искусственного интеллекта со временем становиться более точными и функциональными".
А зачем блокировать? В теории новый сканер может улучшить выдачу именно вашего сайта.
Ildar
Ребзя, как считаете с j2.5 в j4 мигрировать или в ларавел? Каталог объявлений с фильтрами
Ildar
Понимаю что холиварный вопрос. Плюсы и минусы для вас хотел бы услышать
hary
Так как можно судить, не видя хотя бы того что уже есть. А может проще вообще написать с нуля на 4..
Ildar
Да с нуля и придется писать в обоих случаях