在我的web應用程序中,工作流程要求我應該從另一個功能調用一個控制器功能 我應該添加額外的代碼還是要進行一些配置?現在這是我實現的。但是當我點擊「保存」按鈕時,沒有任何事情發生,值只是從窗體中變空。Yii從另一個控制器調用控制器功能
我的代碼。我想在「ProducerOfferController」裏面創建一個「BookVegetable」模型的對象。 我producerOffer控制器內部代碼
public function actionCreate()
{
//$book_vegetable=new BookVegetable;
$model=new BookVegetable;
if(isset($_POST['BookVegetable']))
{
$model->attributes=$_POST['BookVegetable'];
$model->booked_by = Yii::app()->user->id;
$model->save();
if ($model->hasErrors() === false)
{
$this->redirect(Yii::app()->user->returnUrl);
}
}
else
{
Yii::app()->user->setReturnUrl($_GET['returnUrl']);
}
$this->render('book',array('model'=>$model,));
}
我對代碼視圖
<div style='padding-left:50px'>
<?php $form=$this->beginWidget('bootstrap.widgets.TbActiveForm',array('id'=>'non-ajax_form','enableAjaxValidation'=>false,)); ?>
<p class="help-block">Fields with <span class="required">*</span> are required.</p>
<?php echo $form->errorSummary($model); ?>
<?php echo "<br>" ?>
<?php echo CHtml::textField("booked_quantity",$model->booked_quantity); ?>
我的情況
public function actionBookvegetable($id){
$BookVegetable=new BookVegetable;
$model=$this->loadModel($id);
if(isset($_POST['ProducerOffer'],$_POST['BookVegetable']))
{
$model->attributes=$_POST['ProducerOffer'];
$BookVegetable->attributes=$_POST['BookVegetable'];
$BookVegetable->booked_by=Yii::app()->user->id;
$BookVegetable->producer_offer_id=$model->id;
$model->save();
$BookVegetable->save();
if (($model->hasErrors() === false)||($BookVegetable->hasErrors()=== false))
{
$this->redirect(Yii::app()->user->returnUrl);
}
}
else
{
Yii::app()->user->setReturnUrl($_GET['returnUrl']);
}
$this->render('book',array('model'=>$model,'BookVegetable'=>$BookVegetable));
}
<div class="form-actions">
<?php $this->widget('bootstrap.widgets.TbButton', array('buttonType'=>'submit', 'type'=>'primary', 'label'=> 'Save',)); ?>
我應該如何解決這個問題?它是必不可少的,在保存之前將該網址添加任何額外的東西用另一個控制器 裏面一個控制器動作及其後我按保存也
http://localhost/xxx/producerOffer/bookvegetable/20?returnUrl=%xxx%2FproducerOffer%2Fmanage
你想要做什麼,並告訴我在哪一點動作創建你需要訪問另一個控制器動作和你引用的其他控制器動作的代碼是什麼。 tnx – dev1234
「ProducerOffer」控制器內部我想使用「BookVegetable」控制器的創建動作。我的場景就像我想從兩個模型中獲取數據。對於一個模型「ProducerOffer」它的現有記錄和「BookVegetable」它是創建操作。我將添加完整代碼 – user2492854
我已添加完整代碼。 「ProducerOffer」的代碼正在工作,但是當我使用「BookVegetable」控制器的創建操作時,它不起作用,當我點擊保存時,它變成空的 – user2492854