在Yii框架中的一个按钮中给出两个功能

时间:2014-06-18 03:50:43

标签: javascript php button yii

我有一个关于Yii框架的问题,我有提交按钮的问题,我想在一个提交按钮中给出两个fungsi保存和更新,谁能告诉我如何在表单上设置该功能?

<div class="row buttons">
    <?php echo CHtml::submitButton($model->isNewRecord ? 'Create' : 'Save'); ?>
</div>

我改变了“保存”#39;使用&#39;更新&#39;它还有错误添加了主键,如何创建两个功能更新并保存在一个按钮中?

    public function actionCreate()
{
    $model=new TblUasUts;

    // Uncomment the following line if AJAX validation is needed
    // $this->performAjaxValidation($model);

    if(isset($_POST['TblUasUts']))
    {
        $model->attributes=$_POST['TblUasUts'];
        if($model->save())
            $this->redirect(array('view','id'=>$model->nim_mhs));
    }
            if(isset($_POST['TblUasUts'])
    {
            $model->attributes=$_POST['TblUasUts'];
            if($model->update())
            $this->redirect(array('view','id'=>$model->nim_mhs));
     }                
    $this->render('update',array(
        'model'=>$model,
    ));
}

1 个答案:

答案 0 :(得分:0)

在您的表单中,您可以使用以下内容:

<div class="row buttons">
    <?php echo CHtml::submitButton($model->isNewRecord ? 'Create' : 'Update'); ?>
</div>

对于后端代码处理不同的操作,有几个选项,例如,您可以: -

  • 将表单指向不同的网址
  • 设置(隐藏)字段(例如ID)并解析该字段。
  • 使用activeForm中的默认操作,该操作将返回到调用操作,例如actionCreate()或actionUpdate()

根据您的更新,请根据我的初步建议扩展您的控制器以进行其他操作actionUpdate()

actionCreate()或actionUpdate()操作之间的主要区别在于Create操作创建一个新的(空)TblUasUts对象,而Update操作从数据库填充TblUasUts对象。

public function actionCreate()
{
    $model=new TblUasUts;
    ...
    ... Do things with $model ...
    ...
    $model->save();

}

public function actionUpdate
{
    // The id of the existing entry is passed in the url. for example
    // ...http:// .... /update/id/10
    //
    $model = TblUasUts::model()->findByPK($_GET['id']);
    ...
    ... Do things with $model ...
    ...
    $model->save();

}