Books-CMS.clan.su


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Вставки и обновления данных с помощью drupal_write_record()

Вставки в базу данных новых строк и обновления существующих строк являются распространенной программистской задачей. Код обычно определяет, что нужно осуществить — вставку или изменение — а затем выполняет необходимую операцию.


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
API-интерфейс схемы

С помощью уровня абстракции баз данных Drupal поддерживает различные СУБД — MySQL, PostreSQL, SQLite и т.д. Каждый модуль, которому для работы нужна таблица базы данных, описывает эту таблицу для Drupal с помощью определения схемы. Затем Drupal транслирует такое определение в синтаксис, понятный для конкретной СУБД.


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Изменение запросов других модулей с помощью hook_query_alter() Этот хук используется для изменения запросов, созданных где угодно в Drupal, без непосредственного изменения кода самих модулей. Все объекты запроса динамической выборки передаются через функцию hook_query_alter() методом execute() непосредственно перед компиляцией строки запроса. Это предоставляет модулям возможность произвольной обработки запроса. Функция hook_query_alter() принимает единственный параметр — сам объект запроса выборки.
CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Подключение к нескольким базам данных в Drupal

Уровень абстракции баз данных облегчает запоминание имен функций, а, кроме того, еще и обеспечивает защиту запросов. Иногда бывает нужно подключиться к сторонним или унаследованным базам данных, и было бы хорошо использовать для этого — а также для защиты запросов — API-интерфейс баз данных Drupal. И это действительно возможно! Например, модуль может открыть подключение к базе данных вне Drupal и извлечь оттуда данные.


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Использование временной таблицы При выполнении больших объемов обработки данных бывает необходимо создать временную таблицу для работы запроса.
CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Написание собственного драйвера СУБД Предположим, что вам понадобилось написать уровень абстракции для новой, футуристической СУБД с названием DNAbase, в которой для повышения производительности используются молекулярные вычисления. Можно не начинать все с нуля, а скопировать существующий уровень абстракции — например, реализацию PostgreSQL — и изменить его.
CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
ГЛАВА 6. Работа с пользователями

Пользователи — это смысл работы с Drupal. Среда Drupal может помочь пользователям создавать общие проекты, совместно работать над ними и формировать онлайновые сообщества. В данной главе вы узнаете о механизмах аутентификации, входа и внутреннего представления пользователей. Мы начнем с рассмотрения объекта $user и его структуры. Затем разберемся с процессом регистрации, входа и аутентификации пользователей. В конце главы будет показано, как связать Drupal с внешними системами аутентификации, такими как LDAP и Pubcookie.


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Проверка, выполнил ли пользователь вход Стандартный способ узнать, выполнил ли пользователь вход — проверка, равно ли нулю значение $user->uid. Для этой цели в Drupal предусмотрена удобная функция user_is_logged_in() (и аналогичная функция user_is_anonymous()):
CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Хуки пользователя

Реализация хуков пользователя позволяет модулям реагировать на различные действия, выполняемые с пользовательской учетной записью, и изменять объект $user. Имеются несколько вариантов функции hook_user, и каждый вариант предназначен для выполнения своего действия (табл. 6.2).


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Процесс регистрации пользователя

По умолчанию для регистрации пользователя на сайте Drupal нужно лишь ввести пользовательское имя и допустимый адрес электронной почты. Модули могут добавлять в форму регистрации пользователя собственные поля, реализуя несколько хуков пользователя. Сейчас мы напишем модуль с именем legalagree.module, который поможет сайту выжить в полном опасностей современном мире.



Бесплатный конструктор сайтов - uCoz