Yii2 как в контроллере понять, что в форме нажата кнопка Save?
1. Кнопка Save тут ни причем. 
2. У модели есть 2 метода $model->save() и $model->validate()
 $model->save() - сохраняет и валидирует
$model->validate() - только валидирует данные.
У вас должно быть немного иначе:if ($model->validate()) {
        ///здесь ваш код
        $model->save()
        пишем данные, закрываем модалку
    } else {
        выводим результат валидации (рендерим аякс? или встроенная валидация?)
    }
}
С загрузкой данных из формыif ($model->load(Yii::$app->request->post()) && $model->validate()) {
///code
   $model->save()
}
Валидацию вы выбираете сами. Я думаю, что простые правила валидации валидируются ajax. А сложные уже после нажатия кнопки и запроса на сервер. Например, длину текста валидируем на клиенте. А сложную логику после запросаВопрос: как мне в контроллере проверить, что была нажата кнопка Save в форме?
Зачем вам проверять нажата ли кнопка? Это вопрос JS. А в контроллере вы смотрите на переданные данные из формы. Если они есть, то вы их обрабатываете. Если их нет, то вы показываете форму.
данные post запросом сохраняются, по этому обычно в контролере пишут:
if ($request->isPost()) {}
ну или проверить передачу значения:
if ($request->post($имяКнопки)) {}