@EVOSandru6

Как в yii создать action с параметрами?

Добрый день,

В документации указано. что можно создавать Action, указав actionId:

www.yiiframework.com/doc/api/1.1/CController#creat...

Но тут ничего не сказано о том, как передать туда параметры...

У меня 2 вопроса:

1. Можно ли сделать то, что я описал выше?
2. Есть ли более лояльный способ ajax переключения с actionCreate на actionUpdate. Обязательна поддержка загрузки картинок. Дело в том, что некоторые блоки формы должные открываться только после сохранения основной модели.
3. Возможно это лучше провернуть подменяя сценарии как то ?

Пока у меня такой быдлокод, но место , где я в isAjaxRequest блоке создаю action, не работает:

public function actionCreate()
	{
		if (Yii::app()->request->isAjaxRequest ) 
		{
			$model = new Hotels();
			if(isset($_POST['Hotels']))
			{
				$model->setAttributes($_POST['Hotels'], true);
				if(!$model->save())
					My::printArr($model->getErrors());

            // Вызов чужого контроллера и action 
	   $p = Yii::app()->createController('sadmin/hotels'); // /update
            $act = $p[0]->createAction('update', ['id'=>$model->id]);
            $act->run();
			Yii::app()->end();
		}
		else
		{
			$this->layout = '//layouts/form1';
			$model = new Hotels();
			$model->exist = Hotels::STATUS_PUBLIC;
			$firms = Firms::model()->getAll();
			$this->render('create',
				[
					'model'=>$model,
					'firms'=>$firms,
				]);
		}
  • Вопрос задан
  • 293 просмотра
Решения вопроса 1
@EVOSandru6 Автор вопроса
Yii::app()->runController('sadmin/hotels/update/id/'.$id);
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Demetriy
@Demetriy
веб и мобильная разработка

example.com/index.php?r=hotels/create&id=5&price=cheap


public function actionCreate($id, $price) {

}


По-моему так.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы