Yii - структура приложения
В общей базе кода есть только одна папка, общедоступная для веб-сервера. Это веб-каталог. Другие папки вне корневого веб-каталога недоступны для веб-сервера.
Note - Все зависимости проекта находятся в composer.jsonфайл. В Yii2 есть несколько важных пакетов, которые уже включены в ваш проект Composer. Эти пакеты следующие -
- Gii - Инструмент генератора кода
- Консоль отладки
- Фреймворк тестирования Codeception
- Библиотека SwiftMailer
- Библиотека пользовательского интерфейса Twitter Bootstrap
Первые три пакета полезны только в среде разработки.
Структура приложения Yii2 точна и понятна. Он содержит следующие папки -
Assets - В эту папку входят все файлы .js и .css, на которые есть ссылки на веб-странице.
Commands - В эту папку входят контроллеры, которые можно использовать с терминала.
Config - Эта папка содержит config файлы для управления базой данных, приложением и параметрами приложения.
Mail - Эта папка содержит макет почты.
Models - В эту папку входят модели, используемые в приложении.
Runtime - Эта папка предназначена для хранения данных времени выполнения.
Tests - В этой папке находятся все тесты (приемочные, блочные, функциональные).
Vendor - Эта папка содержит все сторонние пакеты, которыми управляет Composer.
Views- Эта папка предназначена для представлений, отображаемых контроллерами. Макет папки является для шаблона страницы.
Web - Точка входа из Интернета.
Структура приложения
Ниже приведено схематическое изображение структуры приложения.
Yii2 - Объекты
Следующий список содержит все объекты Yii2 -
Модели, представления и контроллеры
Модели предназначены для представления данных (обычно из базы данных). View предназначены для отображения данных. Контроллеры предназначены для обработки запросов и генерации ответов.
Составные части
Чтобы создать многоразовую функциональность, пользователь может писать свои собственные компоненты. Компоненты - это просто объекты, содержащие логику. Например, компонент может быть преобразователем веса.
Компоненты приложения
Это объекты, экземпляры которых были созданы только один раз во всем приложении. Основное различие между Компонентами и Компонентами Приложения заключается в том, что последний может иметь только один экземпляр во всем приложении.
Виджеты
Виджеты - это объекты многократного использования, содержащие как логику, так и код отрисовки. Виджетом может быть, например, слайдер галереи.
Фильтры
Фильтры - это объекты, которые запускаются до или после выполнения действий контроллера.
Модули
Вы можете рассматривать модули как повторно используемые субприложения, содержащие модели, представления, контроллеры и так далее.
Расширения
Расширения - это пакеты, которыми может управлять Composer.