Контролери у Yii2. Частина 1

17

Від автора: вітаю вас, друзі. З цієї статті ви дізнаєтеся про одне з ключових компонентом архітектури MVC — це контролери в Yii2 — та основа, з якою необхідно починати вивчення фреймворку, оскільки без них ми не зможемо створити жодної сторінки. Отже, приступимо.

Як ви пам’ятаєте з попередньої статті, контролери є однією з ланок ланцюга життєвого циклу програми Yii2. Поняття Controller є ключовим поняттям шаблону MVC. Саме controller приймає запит користувача та є посередником між двома іншими компонентами в архітектурі MVC: видом і моделлю. Завдання його полягає у запиті даних з моделі і передачу їх у вигляд, який повинен бути викликаний.

Як бачимо, дане ланка займає дійсно ключову позицію в архітектурі MVC. Кажучи простими словами, можна привести наступну зрозумілу аналогію з життя. Контролер — це продавець в магазині. Продавець дістає товар з полиці (дані з моделі), красиво його упаковує (віддає дані вид) і надає покупцеві. Сподіваюся, аналогія зрозуміла.

У Yii2 controller за замовчуванням це SiteController. Розташований він в папці controllers. Всі контролери повинні успадковувати клас yii\web\Controller, який в свою чергу наслідує базовий контролер — \yii\base\Controller.

Контролери у Yii2. Частина 1

Тепер кілька слів про правила іменування. Тут варто запам’ятати наступні моменти:

після назви має слідувати слово Controller, наприклад: SiteController, TestController;

Кожне слово в назві повинно починатися з літери верхнього регістру, наприклад: PostController, ArticleCommentController.

Всередині класу ми можемо створювати дії або дій (action). Кожна дія відповідає за свою сторінку або групу однотипних сторінок. Щодо назв дій, то тут діють наступні просте правило: назва дії має бути з великої літери і перед ним має йти слово action. Наприклад: actionIndex, actionView.

Власне, це основні теоретичні моменти, які вам потрібно знати для початку про ключовому ланці MVC обраного фреймворка. У наступній статті ми з вами створимо свій перший controller з діями і навчимося звертатися до нього. На сьогодні у мене все. Більше про фреймворку ви можете дізнатися з наших безкоштовних або платних уроків.