Лекция для студентов НТУ ХПИ. Рассматривает основы работы с полями (nodes) в Drupal 7 - рассмотрен вопрос использования существующих поелй, их настройка, программная работа с полями,
Web-программирование
Лекция #7. Django ORM
Цикл лекций читается в Омском государственном университете им. Ф.М.Достоевского на факультете компьютерных наук.
Лектор: Яковенко Кирилл Сергеевич.
Лекция #5. Введение в язык программирования Python 3Яковенко Кирилл
Web-программирование
Лекция #5. Введение в язык программирования Python 3
Цикл лекций читается в Омском государственном университете им. Ф.М.Достоевского на факультете компьютерных наук.
Лектор: Яковенко Кирилл Сергеевич.
Web-программирование
Лекция #4. Каскадные таблицы стилей
Цикл лекций читается в Омском государственном университете им. Ф.М.Достоевского на факультете компьютерных наук.
Лектор: Яковенко Кирилл Сергеевич.
Web-программирование
Лекция #7. Django ORM
Цикл лекций читается в Омском государственном университете им. Ф.М.Достоевского на факультете компьютерных наук.
Лектор: Яковенко Кирилл Сергеевич.
Лекция #5. Введение в язык программирования Python 3Яковенко Кирилл
Web-программирование
Лекция #5. Введение в язык программирования Python 3
Цикл лекций читается в Омском государственном университете им. Ф.М.Достоевского на факультете компьютерных наук.
Лектор: Яковенко Кирилл Сергеевич.
Web-программирование
Лекция #4. Каскадные таблицы стилей
Цикл лекций читается в Омском государственном университете им. Ф.М.Достоевского на факультете компьютерных наук.
Лектор: Яковенко Кирилл Сергеевич.
Industrial Programming Java - Lection Pack 01 - Building an application - Lav...Fedor Lavrentyev
Курс "Промышленное программирование на Java". Набор лекций 1. "Сборка и компоновка приложения".
Сборка проекта. Apache Maven. Компоновка и верхнеуровневый дизайн приложения. Depencency Injection. Spring Framework. Spring Boot. Обзор популярных утилитарных библиотек. Логгинг, slf4j, log4j.
МФТИ, 2014 год. Лектор - Лаврентьев Федор Сергеевич
Исай Руслан выступил с темой “Entity. Возрождение легенды” на Drupal Cafe #18
Видео с презентации вы сможете увидеть, перейдя по ссылке https://youtu.be/JkXuirPcBPE?list=PLtUZRIj1OWYzCGb3OCYMVYqnrJ-EpH0Ot
В докладе расcказывается о сущностях в Drupal 7, какие это дает преимущества разработчику а также освещаются некоторые удобные методы для работы с сущностями в Drupal.
Автор: Дмитрий Сторожук
http://Itech4web.com
Курс "Промышленное программирование на Java". Набор лекций 3. "Реляционные базы данных".
Модель предметной области. Подключение к РСУБД из Java.
Spring JDBC.
МФТИ, 2014 год. Лектор - Лаврентьев Федор Сергеевич
Лекция #3. Введение в языки разметки web-страницЯковенко Кирилл
Web-программирование
Лекция #3. Введение в языки разметки web-страниц
Цикл лекций читается в Омском государственном университете им. Ф.М.Достоевского на факультете компьютерных наук.
Лектор: Яковенко Кирилл Сергеевич.
Доклад о разработке (а главное - оптимизации) программы на Perl под Raspberry PI.
Наглядно показывает, что в Perl есть немало возможностей, а также инструментов, которые позволяют делать программы быстрее и эффективнее - используя как преимущества самого языка, так и оптимизацию алгоритма программы.
Bionic University. Разработка с использованием CMS/CMF Drupal. Быстрый старт....Alex Barkov
BIONIC University запрошує на зустріч з активними діячами української Drupal спільноти.
Подробиці та форма реєстрації за посиланням: http://goo.gl/hVcbQV
Спікери та експерти:
Олександр Барков, керівник DEWEB Studio
Євген Курко, організатор конференції UA Mobile
У рамках зустрічі відбудеться презентація нової програми напряму TECH Skills @ BU - «Розробка з CMS/CMF Drupal. Швидкий старт».
Industrial Programming Java - Lection Pack 01 - Building an application - Lav...Fedor Lavrentyev
Курс "Промышленное программирование на Java". Набор лекций 1. "Сборка и компоновка приложения".
Сборка проекта. Apache Maven. Компоновка и верхнеуровневый дизайн приложения. Depencency Injection. Spring Framework. Spring Boot. Обзор популярных утилитарных библиотек. Логгинг, slf4j, log4j.
МФТИ, 2014 год. Лектор - Лаврентьев Федор Сергеевич
Исай Руслан выступил с темой “Entity. Возрождение легенды” на Drupal Cafe #18
Видео с презентации вы сможете увидеть, перейдя по ссылке https://youtu.be/JkXuirPcBPE?list=PLtUZRIj1OWYzCGb3OCYMVYqnrJ-EpH0Ot
В докладе расcказывается о сущностях в Drupal 7, какие это дает преимущества разработчику а также освещаются некоторые удобные методы для работы с сущностями в Drupal.
Автор: Дмитрий Сторожук
http://Itech4web.com
Курс "Промышленное программирование на Java". Набор лекций 3. "Реляционные базы данных".
Модель предметной области. Подключение к РСУБД из Java.
Spring JDBC.
МФТИ, 2014 год. Лектор - Лаврентьев Федор Сергеевич
Лекция #3. Введение в языки разметки web-страницЯковенко Кирилл
Web-программирование
Лекция #3. Введение в языки разметки web-страниц
Цикл лекций читается в Омском государственном университете им. Ф.М.Достоевского на факультете компьютерных наук.
Лектор: Яковенко Кирилл Сергеевич.
Доклад о разработке (а главное - оптимизации) программы на Perl под Raspberry PI.
Наглядно показывает, что в Perl есть немало возможностей, а также инструментов, которые позволяют делать программы быстрее и эффективнее - используя как преимущества самого языка, так и оптимизацию алгоритма программы.
Bionic University. Разработка с использованием CMS/CMF Drupal. Быстрый старт....Alex Barkov
BIONIC University запрошує на зустріч з активними діячами української Drupal спільноти.
Подробиці та форма реєстрації за посиланням: http://goo.gl/hVcbQV
Спікери та експерти:
Олександр Барков, керівник DEWEB Studio
Євген Курко, організатор конференції UA Mobile
У рамках зустрічі відбудеться презентація нової програми напряму TECH Skills @ BU - «Розробка з CMS/CMF Drupal. Швидкий старт».
Основы создания сайта. Часть вторая. Обзор CMS. Выбор CMS под нужды бизнеса. ARTW
Слайды к блоку курса "Интернет-маркетинг в Зоне Действия".
Вторая часть посвящена выбору системы управления сайтом. Рассматривается вопрос необходимости CMS либо альтернативные решения SAAS, генераторы статичных страниц, конструкторы сайтов, а также дополнительный онлайн-инструментарий.
Советы по выбору CMS. Разница между коммерческими, opensource и самописными системами. Рейтинги CMS.
Drupal: система для быстрой и комфортной разработки web-сайтовAlex Barkov
On October 30th, 2013 Alexander Barkov and Andrew Yun on behalf of the deWeb studio and Ukrainian Drupal community made a speech for the students and youth of Software Engineering club IT-master in the hall of the Academic Council "KPI". They talked about the benefits of using CMS / CMF Drupal, - the basic system, based on which we build our projects.
http://deweb.com.ua/blog/speech-students-community-it-master-kpi
Презентация к вебинару по CMS WordPressЕвгений Холин
1. История создания и развития CMS WordPress
2. Причины популярности CMS WordPress
3. Структура CMS WordPress
1. Плагины для WP
2. Темы для WP
3. Иерархия в темах
4. Фреймворки для WordPress
4. Краткий обзор API CMS WordPress
5. Основные достоинства и недостатки WordPress
6. Перспективы разработчика для WordPress, область применения CMS
How can you be confident that your code is well-tested? For me, the criteria are straightforward: you feel comfortable deploying it automatically to production on a Friday evening, and the release pipeline stays as green as an evergreen tree. In this talk, I'll share some approaches that I am following to hit both targets for Node.js apps (APIs BFFs, etc)
Node.js BFFs - our way to the better/micro frontendsEugene Fidelin
To be able to implement new features in as little time as possible, we migrated our
monolithic Java-based frontends towards smaller Node.js BFFs (backend-for-frontend, BFF
pattern - create separate backend services to be consumed by specific frontend
applications).
Now we are close to the next step in our journey and adopt Micro-frontends architecture to
build our web apps as a composition of even smaller features which are owned by
independent teams
The burden of maintenance, keeping things consistent, secure and up-to-date grows with the number of services and libs owned by the teams.
At Marktplaats/Adevinta Benelux we work hard on improving developer experience of our frontend platform so less time is spent on housekeeping and developers can focus all their efforts on product development and nothing else.
Node.js BFFs: our way to better/micro frontendsEugene Fidelin
About 2 years ago Marktplaats.nl started to build a new platform. We migrated from huge Java-based frontends towards smaller Node.js BFFs (backend-for-frontends). We are close to the next step and adapt a micro-frontends approach.
Here I would like to share the outcomes of this quest: what architecture solutions are made, how does Marktplaats.nl run and scale so many BFFs in production, how we grew as a team, educated frontend-developers to write backend code and what were our biggest challenges.
Practical advices how to achieve persistence in Redis. Detailed overview of all cons and pros of RDB snapshots and AOF logging. Tips and tricks for proper persistence configuration with Redis pools and master/slave replication.
Фичи н-н-нада? Или почему стоит использовать модуль Features.Eugene Fidelin
Presentation about using Features module for Drupal.
Made for DrupalCamp Donetsk 2011
Video: http://www.youtube.com/watch?feature=player_embedded&v=3nLlrEYFwgA
Фичи н-н-нада? Или почему стоит использовать модуль Features.
Работа с полями (fields) в Drupal 7
1. Работа с полями (fields) в Drupal 7
Поле (field) — служит для добавления к сущностям
(материалам, комментариям, пользователям, таксономии и
файлам) дополнительных данных
Поле определяется типом данных и виджетом (способом
отображения поля на форме)
2. Основные настройки полей (fields) в Drupal 7
Настройки поля деляться на общие и специфичные для
каждого типа материала
3. Работа с полями (fields) в Drupal 7
Для каждого вида отображения материала может быть свой
форматтер (способ отображения на странице) для каждого
поля
4. Основные типы полей в Drupal 7
Тип поля Виджеты Описание
Boolean Check boxes/radio buttons Поле для хранения флага да/нет
Single on/off checkbox
Decimal Text field Поле для хранения числовых значений с
Float разной точностью
Integer
File File Поле для загрузки произвольных файлов,
можно ограничивать по типам файлам и
размеру
Image Image Поле для загрузки картинок, аналогчино File,
но может показывать превью и ограничивать
размер в пикселях загружаемой картинки
List (float) Select list Поля для хранения числовых значений,
List (integer) Check boxes/radio buttons которые пользователь выбирает из
List (decimal) предложенного списка
Long text Text area (multiple rows) Многострочное поле ввода текста (может
Long text with Text area with a summary быть расширено визуальным редактором)
summary
Term reference Select list Поле для выбора термина таксономии
Check boxes/radio buttons
Autocomplete term widget
Text Text field Поле для хранения короткого однострочного
текста
5. Дополнительные типы полей в Drupal 7
Модули, которые предоставляют свои поля можно скачать
здесь:
– http://drupal.org/project/modules?filters=tid
%3A20224%20drupal_core%3A103
Тип поля Виджеты Описание
Link Text field Поле для хранения ссылки, проверяет ее
правильность, можжет выводить в виде тега
<a> (http://drupal.org/project/link)
Email field Text field Поле для хранения емейла, проверяет
правильность адреса, может защищать от
спама при отображении на сайте
(http://drupal.org/project/email)
References Select list Поле для выбора других материалов или
Check boxes/radio buttons пользователей (аналогично Term reference)
Autocomplete term widget (http://drupal.org/project/references)
Field group Fieldset Не поле! Служит для объединения полей на
Vertical tabs форме в одну группу
Horizontal tabs (http://drupal.org/project/field_group)
6. Работа с группами полей (fieldgroup) в Drupal 7
Группы служат для логического объединения полей на
форме редактирования и при отображении
7. Как поля храняться в БД Drupal 7
Для каждого поля создается своя таблица
Пример - таблица field_data_body — значения поля body
ноды
entity_type - тип сущности. В нашем случае всегда будет = 'node'.
bundle - тип материала.
deleted - флаг, показывающий было ли это поле удалено
entity_id - связка с сущностью. В нашем случае, с полем nid из таблицы 'node'.
revision_id - связка с версией сущности, В нашем случае, с полем мid из таблицы 'node_revisions'.
language - язык поля
delta - порядковый номер, используется для полей, принимающих множество значений
body_value - собственно, значение поля
body_summary - краткое значение поля, тизер
body_format - связка с таблицей filter_format, формат ввода для данного поля
8. Сохранение значений полей в БД Drupal 7
node_save() - сохранение значения полей ноды в БД
– $new_node = new StdClass();
$new_node->type = 'portfolio';
$new_node->title = 'Новый заголовок';
$new_node->uid = 1;
//если нет языков - LANGUAGE_NONE
$new_node->language = 'ru';
$new_node->body[$node->language]['0']['value'] = 'Содержимое';
$new_node->body[$node->language]['0']['summary'] = 'Анонс';
$new_node->body[$node->language]['0']['format'] = 'full_html';
//поле с несколькими значениями
$new_node->field_price[$node->language]['0']['value'] = 100;
$new_node->field_price[$node->language]['1']['value'] = 101;
$new_node->field_text[$node->language]['0']['value'] = 'текст';
node_save($new_node);
// узнаем какой ID присвоился созданной ноде
$nid = $new_node->nid;
9. Получение значений полей в БД Drupal 7
node_load() - загрузка данных ноды
– $node = node_load(17); //указываем nid нужной ноды
//теперь в $node храниться вся информация о ноде
//загруженная из БД
//получаем нужные значения
$text = $node->field_text[$node->language]['0']['value'];
/*
$text = 'текст'
*/
//получаем нужные значения для многозначных полей
$prices = field_get_items('node', $node, 'field_price');
/*
$prices = array(
0 => array('value' => 100),
1 => array('value' => 101)
)
*/
10. Вывод и отображение полей в Drupal 7
field_view_value() - рендеринг значения поля
– $node = node_load(17); //указываем nid нужной ноды
//выводим значения одного поля
//указываем вид отображения full или teaser
//от этого будут зависеть настройки отображения полей
$rendered_price = field_view_value('node', $node, 'field_price', 'full');
//полученный массив преобразуем в HTML
print drupal_render($rendered_price);
11. Расширенные возможности
Создание собственных типов полей
Добавление полей к другим сущностям
Запросы к полям через EntityFieldQuery
Работа с шаблонами материалов (отдельная лекция)
12. Ссылки на подробную информацию
http://drupal.org/project/modules?filters=tid
%3A20224%20drupal_core%3A103
http://api.drupal.org/api/drupal/includes
%21entity.inc/class/EntityFieldQuery/7
http://api.drupal.org/api/drupal/modules%21field
%21field.module/group/field/7
13. Контакты
Фиделин Евгений
Компания QArea
Email: eugene.fidelin@gmail.com
Skype: eugene.fidelin