Креатив
Верный ход
Качество
Надёжность

У всех таблиц базы данных есть префикс, обычно это jos _, который помогает в использовании единственной базы данных для многократной установки Joomla!. Когда мы пишем SQL-запросы, чтобы разместить переменный табличный префикс, мы используем символьный префикс, который заменяется фактическим префиксом во время выполнения. Обычно символьный префикс - #__, но мы можем определить альтернативный префикс, если мы хотим.

 Вернуться к оглавлению

Когда мы создаем расширения, мы обычно хотим хранить данные в какой-либо форме. Если мы используем базу данных, важно расширить его правильным методом. Более подробная информация о расширении базы данных с компонентами доступно в Главе 4.

Вернуться к оглавлению

Эта глава детализирует роль базы данных в Joomla!. Определяются некоторые стандартные правила, которые мы должны соблюдать. Объясняются различные способы, которыми мы можем выполнить запрос в базу данных. Также кратко охватывается эмуляцию ADOdb, которая доступна для разработчиков, которые хотят портировать существующие приложения.

Joomla! в настоящее время разработана, чтобы использовать базу данных MySQL. Однако, архитектура действительно допускает реализацию других драйверов базы данных. Существует некоторая неопределенность в вопросе поддержки других баз данных, из-за использования в запросах функций и синтаксиса, которые являются специфическими для MySQL.

 Вернуться к оглавлению

Большая часть данных, которые мы видим в Joomla! хранятся в базе данных. Базовая установка имеет более тридцати таблиц. Некоторые из них связаны с базовыми расширениями и другими внутренними работами Joomla!.

Есть официальная схема базы данных, которая описывает таблицы, созданные во время установки. Для получения дополнительной информации, см.: http://dev.joomla.org/component/option,com_jd-wiki/Itemid,31/id,guidelines:database/.

Табличное описание доступно по адресу: http://dev.joomla.org/downloads/Joomla15_DB-Schema.htm.

Мы получаем доступ к базе данных Joomla! используя глобальный объект JDatabase. Класс JDatabase - абстрактный класс, который расширен различными драйверами базы данных. Есть в настоящее время только два драйвера базы данных, включенные в ядро Joomla!: MySQL и MySQLi. Мы получаем доступ к глобальному объекту JDatabase, используюя JFactory:

$db =& JFactory::getDBO();

Вернуться к оглавлению

Приложение воплощает в себе весь процесс ответа на запрос. Документ используется, чтобы определить формат данных ответа и как буфер, чтобы хранить данные ответа.

Вместо того, чтобы использовать запрос и хэш сессии в Joomla!, мы используем статический класс JRequest и глобальный объект JSession. Класс JRoute позволяет нам проанализировать и создать внутренние URI. Класс JText используется, чтобы перевести строки на различные языки. Ограничения в PHP означают, что мы должны использовать JString, чтобы обработать данные UTF-8; если мы не сделаем это, мы рискуем повредить данные.

Несмотря на то, что стандарты кодирования, которые мы используем, в конечном счете наше дело, мы должны рассмотреть использование тех же стандартов, какие реализованы в проекте Joomla!. Если мы решили не использовать эти стандарты, мы все равно должны рассмотреть вопрос о добавлении документационных тэгов к нашим классам и функциям, поскольку они могут значительно уменьшить время разработки и отладки.

 Вернуться к оглавлению

Войти на сайт

Запомнить меня

Новости

  • Перевод Mastering Joomla! 1.5

    14.03.2013

    Продолжается перевод книги "Mastering Joomla! 1.5". На данный момент полностью переведено 2 главы. Полностью перевод книги...

    Подробнее...

  • Модернизация сайта

    28.05.2012

    Уважаемые посетители! Мы полностью модернизировали наш сайт и надеемся что сейчас им станет...

    Подробнее...