Главная Новости

Новая концепция сущностей (Entity) в Drupal 7

Опубликовано: 31.10.2017

видео Новая концепция сущностей (Entity) в Drupal 7

Жители Новой Земли: Одержимость минусовыми сущностями

Что такое, с чем едят?

Все модули, написанные под Drupal условно можно разделить на две категории. Первая - модули, которые фактически не объявляют новых типов данных и работают с данными уже где-то определенными и хранимыми. Например модуль lightbox2 позволяет изменить представление изображений на сайте, а модуль devel предоставляет различные утилиты, полезные разработчику. И хотя модуль devel сохраняет некоторую информацию в базе данных (время выполнения sql запросов, например) фактически это нельзя назвать полноценной моделью данных.



Вторая категория - это модули которые позволяют создавать новые типы объектов, определяют новые модели данных. К таким модулям, например относятся модуль webform (позволяет создавать формы опросов), а также входящий в ядро модуль user (создавать (регистрировать) новых пользователей, выполнять с ними различные операции).


ВОЗВРАЩЕНИЕ ЧАСТИ ДУШИ ИЗ МИРА МЕРТВЫХ.ИСТОРИЯ ЗЕМЛИ И ЛЮДЕЙ.

Когда у Вас, как у разработчика, модуля появляется необходимость в объявлении нового типа данных, у Вас есть два варианта. Первый вариант - определить Ваш тип данных как новый тип материала (node type). Второй вариант - создавать все с нуля. У обоих подходов есть свои преимущества и недостатки. Понятно, что второй вариант является более гибким и не накладывает на Вас практически никаких ограничений в реализации. Первый же вариант является более удобным и быстрым в исполнении за счет готовых средств, предоставляемых Node API.

Однако, не только из-за скорости и удобства разработки, большинство серьезных модулей, созданных под Drupal 6 и реализующих некоторую новую модель данных, объявляют ее как node type. Важной особенностью является то, что все материалы независимо от типа имеют некую общую структуру и общую схему внешнего взаимодействия. Такой подход позволяет написать один модуль для расширения функциональности всех типов материала существующих в системе. По сути, Вы можете даже не знать о существовании некоторого типа материала и при этом создать модуль, который будет влиять на него и сможет им оперировать. Яркими примерами являются модули CCK и Views.

3D стерео фильмы для 5D
rss