Кожемякин Артём Дмитриевич Технический директор (совладелец) Исполнительный директор (совладелец) Эксперт консультант [интернет магазин][образовательный.

Презентация:



Advertisements
Похожие презентации
Системы управления взаимоотношениями с клиентами. Drupal CRM Core. Вадим Миргород
Advertisements

Разработка модуля для CMS Drupal на примере разработки плагина для модуля CCK Роман Архаров.
Организация интернет магазина на базе Drupal 7 и 1С Кинзябулатов Рамиль getfreshidea.ru Кинзябулатов Рамиль getfreshidea.ru.
Многоязычность в Drupal 7 DrupalConf Moscow 2011 Катя Маршалкина
Информационные системы. Базы данных. Информационная система – любая система обработки информации (шир)
Генеральный спонсор и организатор конференции DrupalConf 2011 При поддержке:
Развитие платформы SciRus Якшин М. М. БЕН РАН. Исторический экскурс: платформа SciRus Разрабатывается с 2004 г. Инструмент для создания настраиваемых.
Введение в базы данных. Реляционное проектирование Затрагиваемые темы Проблемы, решаемые хранением данных в СУБД Проблемы, решаемые хранением данных в.
АИС Аптекарь 8.1 Интеграция программной функции. Ателье Информационных Систем Специализация - разработка систем автоматизации аптек и аптечных сетей.
Microsoft, Azure, Drupal. Организатор конференции DrupalConf 2011.
Мастер-класс «Привет, Drupal!». Партнер мастер- класса
Инструментарий начинающего разработчика Drupal Колосов Алексей, IT-Patrol inc.
Вадим Думбравану руководитель проектов D7. ORM. Object-relational mapping Недостатки текущего похода в API На каждую сущность программируется свой GetList,
Drupal Camp Minsk Возможность изменения только одной области Нет инструментов, позволяющих загрузить css или js динамически Механизм по перезагрузке.
OOП Инна Исаева. Подпрограмма – это большая программа, разделённая на меньшие части. В программе одна из подпрограмм является главной. Её задача состоит.
StartUpSecurity HackDay #9 Авторы: Сергей Соколов Санкт-Петербург, Ноября 2010.
Рабочее место для управления «Городом будущего». Работа с информацией в государственных органах Постоянное увеличении объема используемой информации Постоянное.
Темы в Drupal 6 Что нового, и чем оно грозит. Нирвана – близка ли она? Нирвана темизации наступит, когда дизайнерам будет легко делать новые темы, а простым.
Программирование без программирования. CCK + Views 1. CCK Content Construktion Kit, интерфейс для создания новых типов контента или для расширения существующих.
Мастер-класс по CMS Drupal Система управления содержимым Drupal.
Транксрипт:

Кожемякин Артём Дмитриевич Технический директор (совладелец) Исполнительный директор (совладелец) Эксперт консультант [интернет магазин][образовательный центр] [поставщик и интегратор ]

Организатор конференции DrupalConf 2011

Бронзовый спонсор: Генеральный информационный спонсор: drupal.ru

Пользователь Материал Термин такс. Тип мат. 1 Тип мат. 2 Тип мат.N Заказ в Ubercart ……

Пользователь Материал Термин такс. Тип мат. 1 Тип мат. N Заказ в Ubercart …… Сущность Словарь. 1 Словарь. N Типы сущностейБандлы

Drupal 6 Drupal 7 Пользователь Материал Термин такс. Тип мат. 1 Тип мат. 2 Тип мат.N Заказ в Ubercart …… Сущность Пользователь Материал Термин такс. Заказ в Ubercart …… Словарь 1 Словарь N Тип мат. 1 Тип мат.N

Возможность «из коробки» расширять с помощью различных полей: Пользователей (замена модулю Profile). Материалы (замена модулю CCK). Термины таксономии в зависимости от словаря. Комментарии к материалам. Возможность создать тип поля 1 раз и использовать его в неограниченном числе бандлов разных типов сущностей в дальнейшем.

Новый уровень абстракции. Устранение неприятной дилеммы «Реализовать ли X как тип материала или как самостоятельную единицу». Единый интерфейс для написания модулей расширяющих возможности сразу всех (или нескольких) типов сущностей. Возможность использовать множество сторонних модулей для расширения возможностей своих типов сущностей. Field API + Field UI для расширения любого типа сущностей механизмом полей. Entity API для автоматического оснащения любого типа сущностей CRUD интерфейсом и интеграции с Futures. Bundle Inherit API для возможности реализации иерархической системы бандлов внутри любого типа сущности и их наследования. …

1. Определить hook_entity_info() с минимальным набором ключей: 1. label – Human readable название сущности (переведенное). 2. controller class – Класс контроллера сущности. 3. uri callback – Функция обратного вызова принимающая в качестве аргумента сущность и возвращающая фрагменты ее URL (array(path => )).

2. Определить класс контроллер типа сущности реализующий интерфейс DrupalEntityControllerInterface. __construct($entityType); resetCache(array $ids = NULL); load($ids = array(), $conditions = array());

Разделение на поля (fields) и экземпляры полей (fields instances) Абстрактное хранилище. По умолчанию – каждое поле в своей таблице в которой хранятся все его экземпляры.

Позволяет наследовать любые типы сущностей создавая иерархическую структуру. Состоит из 2х модулей: bundle_inherit – модуль предоставляющий API для оснащения других сущностей механизмом наследования bundle_inherit_node – реализует наследование в модуле node с помощью Bundle Inherit API

МягкоеСтрогое Копирование экземпляров полей из родительского в дочерний бандл. + + Поддержка синхронизации на всем времени жизни бандла. - + Типы наследования.

Кожемякин Артём lemark.habrahabr.ru

Организатор конференции DrupalConf 2011

Бронзовый спонсор: Генеральный информационный спонсор: drupal.ru