Я использую ajaxSubmitButton для отправки данных на мой контроллер. Это действие контроллера делает две инструкции вставки в транзакции. Все это работает просто отлично. Теперь я хочу, чтобы после завершения транзакции было перенаправлено новое представление, но я не могу заставить это работать.
Когда я нажимаю кнопку, транзакция обрабатывается, но я остаюсь на той же странице. Я также пытался использовать «обновление» внутри кнопки и обтекания части страницы, но не обновлял содержимое. Впрочем, это не то, что мне нужно, потому что я хочу закончить рендерингом совершенно нового представления.
Вот что у меня есть ...
VIEW
echo CHtml::ajaxSubmitButton('submit',
array('/player/mark'),
array(
'type'=>'POST',
'data' => array(...),
));
CONTROLLER
public function actionMark()
{
$connection = yii::app()->db;
$transaction=$connection->beginTransaction();
try
{
$connection = yii::app()->db;
$sql1 = "INSERT ...";
$command=$connection->createCommand($sql1);
...
$command->execute();
$connection = yii::app()->db;
$sql2 = "INSERT ...";
$command=$connection->createCommand($sql2);
...
$command->execute();
$transaction->commit();
$this->redirect(array('manage')); // THIS IS NOT WORKING
}
catch(Exception $e)
{
$transaction->rollBack();
$this->refresh;
}
}