Как обработать форму для шаблона страницы (layouts/main.php)?
===============================================================

 Форма в модальном окне должна использоваться на всех страницах сайта, следовательно пихаем ее в layouts.  

Для обработки формы используется SiteController. Проблема в том, что если она находится в layouts/main.php , обработка формы через этот контроллер не выполняется. Если форму запихнуть в site/index.php - все работает.  

В юзесах все тоже самое, проблема в обработке.  

  

По сути, насколько я понимаю, форма для шаблона страницы также должна обрабатываться в SiteController и может не рендериться. 

```
<?php $form = ActiveForm::begin([
    'action' => '/your-controller/your-action'
]); ?>
```
  

А вы пропишите у формы атрибут action. И сможете выбирать какой собственно action контроллера для ее обработки выполнять. 

 Если форма везде работает одинаково и не отправляет информацию, зависящую от текущего контента страницы, то лучше не упоминать ее в контроллерах.  

А отправку данных выполнять либо (элегантно) AJAXом, либо (хардкорно) внутри формы передавать текущий URL и возвращать на него же после обработки формы. То есть, контроллер для неё написать всё же надо, но один и независимый.