Если не drupal 8, то что? Обзор laravel 5

36
Если не Drupal 8, то что? Обзор Laravel 5

Upload: drupalspb

Post on 16-Jan-2017

559 views

Category:

Software


8 download

TRANSCRIPT

Если не Drupal 8, то что?Обзор Laravel 5

Кто я?Алексей Балабошко

Делаю сайты с 2001 года

Drupal 4, 5, 6, 7и промежуточные версии

Разработка поддержка

разработка — месяцы, поддержка несколько лет

Переход с версии на версию

трудоёмкий процесс

Сайт — набор страниц

контент

Сайт — приложениелогика + пользователи

Клиентнам надо его удовлетворять

Гибкостьсвои модули для кастомизации

Развитие проектакастом-модули разрастаются

Дополнительные библиотеки, классы

В попытке «встать на плечи гигантов» подключаем всё больше и больше чужого кода к нашему модулю.

Прошло два годаlegacy

https://www.flickr.com/photos/anataman/114238583/

Решениеодно из

4⇨5⇨6⇨7https://en.wikipedia.org/wiki/File:Konark_Sun_Temple_Wheel.jpg

ТехнологииOOP, новый шаблонизатор,

сторонние библиотеки, composer

MVC-frameworkодин из

Как Drupal, но не как Drupal

Drupal — контент, роли, черновики, Laravel — логика, гибкость, программирование.

Системные  требования

PHP >= 5.6.4 OpenSSL PHP Extension

PDO PHP Extension Mbstring PHP Extension Tokenizer PHP Extension

XML PHP Extension

Как установить?

$ composer global require "laravel/installer"

$ laravel new website

.envвсе пароли, логины и адреса храняться в файле .env в корне проекта,

а в config-файлах — только ссылки на переменные окружения

Вместо CCK — бумага и ручкаесли нужна база данных, то её структуру надо

спроектировать самому

Миграцииклассы, в которых мы описываем изменения

в структуре базы данных

RollbackМиграции можно «откатить»

контроль над структурой базы данных

Модели Eloquentкак данные себя ведут

и как они связаны с другими данными (ActiveRecord)

Путикак наше приложение / сайт будет узнавать по какому URL что надо сделать (вызвать контроллер, или отдать строку)

Логика, контроллерыкакие данные взять что с ними сделать, в каком

шаблоне вернуть (можно прямо отсюда отдать JSON)

Шаблоны .bladeв шаблонизаторе есть наследование, циклы, проверки

<?= писать не надо ?>

Laravel != CMSЕсли нужна «админка», надо её строить самому

(это не больно)

SleepingOwl Adminhttps://github.com/LaravelRUS/SleepingOwlAdmin

http://sleepingowladmin.ru

Форма в CMSвид изнутри

Форма в CMSвид «снаружи»

Интерфейс CMSbootstrap :-)

отсутствует избыточность

в интерфейсе CMS — только те «кнопки», которые мы сами специально сделали

Спасибо[email protected]

@validator_ru

BUZZfriends.ru