Новости Joomla

Совет по Joomla: $db->getQuery(true) стал устаревшим

Совет по Joomla: $db->getQuery(true) стал устаревшим

👩‍💻 Совет по Joomla: $db->getQuery(true) стал устаревшим.Раньше при создании запросов в базу данных мы всегда получали объект запроса с помощью метода

getQuery(). Если передавался параметр
$new =
true, то получали новый запрос. Если без - последний.

use Joomla\CMS\Factory;$db = Factory::getContainer()->get('DatabaseDriver');$query = $db->getQuery(new: true);// и строим запрос
Под капот Joomla 4 вошёл Joomla Framework (PHP фреймворк а-ля Laravel, Yii и т.д.), а для Joomla 5 он обновился - версия 3.4.1 вышла 6 октября 2023г. В методе фреймворка есть примечание о том, что параметр
$new, который передавался в метод
getQuery() помечен как устаревший и будет удалён в версии фреймворка 4.0.
The parameter $new is deprecated and will be removed in 4.0, use %s::createQuery() instead.В Joomla 4 версия Joomla Framework была 2.x., в Joomla 5 - 3.x. Поэтому есть предположение, что с выходом Joomla 6 обновится и версия фреймворка - станет 4.0. Поэтому для получения объекта для новых запросов следует использовать метод
createQuery(). Он уже представлен в ядре и широко используется. При этом метод
getQuery() останется, но, скорее всего, будет выполнять функцию только геттера - получения текущего запроса.
@joomlafeed#joomla #php #разработка

0 Пользователей и 1 Гость просматривают эту тему.
  • 7 Ответов
  • 2851 Просмотров
*

KingSnake

  • Захожу иногда
  • 231
  • 0 / 1
Имеется сайт на Joomla 2.5.28, резервная копия которого скачена с хостинга. Установлен OpenServer, бэкап загружен и успешно работает. Теперь собственно вопрос - как мне обновить мой сайт до последней версии Joomla? Сайт естественно, на домашнем компе, а не в интернете. Хочется экспериментировать на локальном сервере, а не в интернете. Возможно что-то нужно прописать в хост? Чтобы OpenServer выходил в интернет только за обновлениями, но не для тестирования сайта.

Если это уже где-то обсуждалось, то буду рад если тыкните носом. Заранее большое спасибо за помощь)
*

KingSnake

  • Захожу иногда
  • 231
  • 0 / 1
Re: Обновление на локальном сервере
« Ответ #1 : 21.11.2016, 09:33:39 »
Господа! Не может быть, чтобы все на хостинге экспериментами занимались. А не на локальном серваке. Подскажите, как сделать обновление. Пожалуйста)
*

Дмитрий_76

  • Захожу иногда
  • 137
  • 24 / 0
Re: Обновление на локальном сервере
« Ответ #2 : 21.11.2016, 09:40:40 »
Если компьютер подключен к интернету, то никаких отличий в обновлении сайта нет.
Если не подключен, то скачать файлы обновления и установить, как обычно устанавливаются расширения.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Обновление на локальном сервере
« Ответ #3 : 21.11.2016, 10:45:49 »
я честно говоря вообще не пойму, в чем проблема :) что такое
Цитировать
Чтобы OpenServer выходил в интернет только за обновлениями, но не для тестирования сайта.
не очень понятно. он и так работает локально, на то он и локальный сервер.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

AtomU235

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Обновление на локальном сервере
« Ответ #4 : 21.11.2016, 11:26:20 »
Как тут уже заметили сайт запущенный на локальном виртуальном хостинге работает на вашем компьютере. Однако, это не мешает ему тянуть файлы или инфу из интернета по ссылкам. В том числе и обновления. Все будет применяться к тому сайту откуда идет запрос, то есть к локальной версии. 
Из своей практики замечено что локальной сайт обновляется автоматически не всегда. С чем это связанно не разбирался.

Пы.Сы: В configuration.php не забудьте прописать правильные пути в переменных $log_path и $tmp_path. 
*

KingSnake

  • Захожу иногда
  • 231
  • 0 / 1
Re: Обновление на локальном сервере
« Ответ #5 : 21.11.2016, 12:48:01 »
Если обновляться через "Обновление Joomla", то пишет "Ошибка загрузки пакета обновления". Если скачать этот архив и попробовать загрузить через менеджер расширений, пишет что "Не удалось найти XML-файла установки"

$log_path и $tmp_path прописан как document_root/tmp и document_root/log
*

KingSnake

  • Захожу иногда
  • 231
  • 0 / 1
Re: Обновление на локальном сервере
« Ответ #6 : 23.11.2016, 11:01:19 »
Решил я свою проблему. Конечно немного странным образом... но тем не менее. На локальном сервере, Joomla у меня категорически не хотела обновляться, а на новую версию переходить все таки нужно. Что я сделал? Взял установил Joomla 3.6.4, затем полез в phpMyAdmin. Там импортировал БД, которую утащил с хостинга. В этой БД, я экспортировал несколько таблиц, в частности те которые относятся в содержимому, к файловому архиву и галерее. Благо, там все подписано) Эти таблицы импортировал в БД которая создана была для новой версии Joomla. Правда после импорта, пришлось поменять у них префикс... но это уже частности. Вот как-то так.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Нужна проф помощь в обновлении Joomla на лок.сервере osp. Можно платно

Автор Fati

Ответов: 0
Просмотров: 271
Последний ответ 16.06.2025, 16:40:04
от Fati
Обновление расширений

Автор GTHack

Ответов: 1
Просмотров: 2303
Последний ответ 07.01.2024, 16:25:18
от SeBun
Обновление до Joomla 3.10.12 не происходит

Автор Missile

Ответов: 9
Просмотров: 3363
Последний ответ 14.07.2023, 12:38:45
от wishlight
Обновление

Автор Асылжан

Ответов: 0
Просмотров: 854
Последний ответ 05.06.2023, 15:39:07
от Асылжан
Обновление с быстрым стартом

Автор weser

Ответов: 5
Просмотров: 1212
Последний ответ 15.02.2023, 00:07:36
от weser