Полное руководство по Yii 2.0
Полное руководство по Yii 2.0
Данное руководство выпущено в соответствии с положениями о документации Yii.
All Rights Reserved.
2014 © Yii Software LLC.
Введение
- О Yii
- Обновление с версии 1.1
- Пространства имён
- Компонент и объект
- Конфигурация объекта
- События
- Псевдонимы пути
- Представления
- Модели
- Контроллеры
- Виджеты
- Консольные приложения
- I18N
- Фильтры действий
- Ресурсы
- Хелперы
- Формы
- Построитель запросов
- Active Record
- Поведения Active Record
- User и IdentityInterface
- Разбор и генерация URL
- Использование Yii 1.1 вместе с 2.x
Первое знакомство
- Что вы должны знать
- Установка Yii
- Запуск приложения
- Говорим «Привет»
- Работа с формами
- Работа с базами данных
- Генерация кода при помощи Gii
- Что дальше?
Структура приложения
- Обзор
- Входные скрипты
- Приложения
- Конфигурации приложения
- Свойства приложений
- Обязательные свойства
- Важные свойства
- [[yii\base\Application::aliases|aliases]]
- [[yii\base\Application::bootstrap|bootstrap]]
- [[yii\web\Application::catchAll|catchAll]]
- [[yii\base\Application::components|components]]
- [[yii\base\Application::controllerMap|controllerMap]]
- [[yii\base\Application::controllerNamespace|controllerNamespace]]
- [[yii\base\Application::language|language]]
- [[yii\base\Application::modules|modules]]
- [[yii\base\Application::name|name]]
- [[yii\base\Application::params|params]]
- [[yii\base\Application::sourceLanguage|sourceLanguage]]
- [[yii\base\Application::timeZone|timeZone]]
- [[yii\base\Application::version|version]]
- Полезные свойства
- [[yii\base\Application::charset|charset]]
- [[yii\base\Application::defaultRoute|defaultRoute]]
- [[yii\base\Application::extensions|extensions]]
- [[yii\base\Application::layout|layout]]
- [[yii\base\Application::layoutPath|layoutPath]]
- [[yii\base\Application::runtimePath|runtimePath]]
- [[yii\base\Application::viewPath|viewPath]]
- [[yii\base\Application::vendorPath|vendorPath]]
- [[yii\console\Application::enableCoreCommands|enableCoreCommands]]
- Обязательные свойства
- События приложения
- Жизненный цикл приложения
- Компоненты приложения
- Контроллеры
- Модели
- Представления
- Модули
- Фильтры
- Использование фильтров
- Создание фильтров
- Стандартные фильтры
- [[yii\filters\AccessControl|AccessControl]]
- Фильтр метода аутентификации
- [[yii\filters\ContentNegotiator|ContentNegotiator]]
- [[yii\filters\HttpCache|HttpCache]]
- [[yii\filters\PageCache|PageCache]]
- [[yii\filters\RateLimiter|RateLimiter]]
- [[yii\filters\VerbFilter|VerbFilter]]
- [[yii\filters\Cors|Cors]]
- Виджеты
- Ресурсы
- Расширения
Обработка запросов
- Обзор
- Bootstrapping
- Разбор и генерация URL
- Запросы
- Ответы
- Сессии и куки
- Обработка ошибок
- Логирование
Основные понятия
- Компоненты
- Свойства
- События
- Поведения
- Конфигурации
- Псевдонимы
- Автозагрузка классов
- Service Locator
- Контейнер внедрения зависимостей
Работа с базами данных
- Объекты доступа к данным (DAO) - Соединение с базой данных, простые запросы, транзакции и работа со схемой.
- Построитель запросов - Запросы к базе данных через простой слой абстракции.
- Построение запросов
- [[yii\db\Query::select()|select()]]
- [[yii\db\Query::from()|from()]]
- [[yii\db\Query::where()|where()]]
- Строковый формат
- Формат массива
- Формат операторов
- Добавление условий
- Условия для фильтров
- [[yii\db\Query::orderBy()|orderBy()]]
- [[yii\db\Query::groupBy()|groupBy()]]
- [[yii\db\Query::having()|having()]]
- [[yii\db\Query::limit()|limit()]] и [[yii\db\Query::offset()|offset()]]
- [[yii\db\Query::join()|join()]]
- [[yii\db\Query::union()|union()]]
- Методы выборки
- Индексация результатов запроса
- Пакетная выборка
- Построение запросов
- Active Record - Получение объектов AR, работа с ними и определение связей.
- Миграции - Контроль версий схемы данных при работе в команде.
- Sphinx
- Redis
- MongoDB
- ElasticSearch
Получение данных от пользователя
- Создание форм
- Валидация
- Загрузка файлов
- Табличный ввод
- Работа с несколькими моделями
- Расширение ActiveForm на стороне клиента
Отображение данных
- Форматирование данных
- Постраничная разбивка
- Сортировка
- Провайдеры данных
- Виджеты для данных
- Работа с клиентскими скриптами
- Темизация
Безопасность
Кеширование
- Обзор
- Кэширование данных
- Компоненты кэширования
- Поддерживаемые хранилища
- Кэш API
- Ключи кэша
- Срок действия кэша
- Зависимости кэша
- Кэширование запросов
- Очистка кэша
- Конфигурации
- Использование
- Ограничения
- Компоненты кэширования
- Кэширование фрагментов
- Кэширование страниц
- HTTP кэширование
Веб-сервисы REST
- Быстрый старт
- Ресурсы
- Контроллеры
- Роутинг
- Форматирование ответа
- Аутентификация
- Ограничение частоты запросов
- Версионирование
- Обработка ошибок
Инструменты разработчика
Тестирование
Специальные темы
- Шаблон приложения advanced
- Создание приложения с нуля
- Консольные команды
- Встроенные валидаторы
- Docker
- Интернационализация
- Отправка почты
- Оптимизация производительности
- Окружение виртуального хостинга
- Шаблонизаторы
- Работа со сторонним кодом
- Использование сторонних библиотек в Yii
- Использование пакетов Composer
- Использование отдельных библиотек
- Использование Yii в сторонних системах
- Использование Yii 2 в связке с Yii 1
- Использование сторонних библиотек в Yii
- Использование Yii в качестве микро-framework'а
Виджеты
Хелперы
- Информация о материале
- Родительская категория: Полное руководство по Yii 2.0
- Категория: Тестирование
Фикстуры
Фикстуры (англ. fixtures) - это важная составляющая тестирования. Их основная задача заключается в подготовке окружения с заранее фиксированным/известным состоянием для гарантии повторяемости процесса тестирования. Yii предоставляет фреймворк, который позволяет легко и точно определять фикстуры и использовать их в ваших тестах.
- Информация о материале
- Родительская категория: Полное руководство по Yii 2.0
- Категория: Тестирование
Приёмочное тестирование
Приемочный тест проверяет сценарий с точки зрения конечного пользователя. К тестируемому приложению получают доступ либо через PhpBrowser, либо через реальный браузер. В обоих случаях браузеры взаимодействуют с приложением через HTTP, поэтому приложение следует запускать посредством веб-сервера.
- Информация о материале
- Родительская категория: Полное руководство по Yii 2.0
- Категория: Тестирование
Функциональные тесты
Note: Данный раздел находится в разработке.
- Информация о материале
- Родительская категория: Полное руководство по Yii 2.0
- Категория: Тестирование
Модульные тесты
Note: Данный раздел находится в разработке.
Модульный тест проверяет что отдельный модуль кода работает верно. В ООП самым базовым модулем является класс. То есть модульный тест проверяет все методы интерфейса класса. На вход подаются различные параметры и тест проверяет, что методы возвращают ожидаемые значения. Модульные тесты обычно пишутся тем же, кто реализует тестируемый класс.
- Информация о материале
- Родительская категория: Полное руководство по Yii 2.0
- Категория: Тестирование
Настройка тестового окружения
Note: Данный раздел находится в разработке.
Yii 2 официально поддерживает интеграцию с фреймворком для тестирования Codeception
, который позволяет вам проводить следующие типы тестов:
- Модульное тестирование - проверяет что отдельный модуль кода работает верно;
- Функциональное тестирование - проверяет пользовательские сценарии через эмуляцию браузера;
- Приёмочное тестирование - проверяет пользовательские сценарии в браузере.
- Информация о материале
- Родительская категория: Полное руководство по Yii 2.0
- Категория: Тестирование
Тестирование
Тестирование является важной составляющей разработки программного обеспечения. Мы проводим тестирование непрерывно, осознаем мы это или нет. Например, когда мы пишем класс на языке PHP, мы можем отлаживать его шаг за шагом или просто использовать echo
или die
для проверки, что реализация работает в соответствии с намеченным планом. В случае веб приложения, мы вводим некоторые тестовые данные в форму для того, чтобы убедиться, что страница взаимодействует с нами, как ожидается.
Подкатегории
Введение Кол-во материалов: 2
Первое знакомство Кол-во материалов: 8
Структура приложения Кол-во материалов: 12
Обработка запросов Кол-во материалов: 8
Основные понятия Кол-во материалов: 9
Работа с базами данных Кол-во материалов: 8
Получение данных от пользователя Кол-во материалов: 6
Отображение данных Кол-во материалов: 7
Безопасность Кол-во материалов: 7
Кеширование Кол-во материалов: 5
Веб-сервисы REST Кол-во материалов: 9
Инструменты разработчика Кол-во материалов: 3
Тестирование Кол-во материалов: 6
Специальные темы Кол-во материалов: 12
Виджеты Кол-во материалов: 2
Хелперы Кол-во материалов: 4
Страница 4 из 51