Php Yii mysql事务:数据只保存在一个表中

Php Yii mysql事务:数据只保存在一个表中,php,yii,transactions,mysql-workbench,Php,Yii,Transactions,Mysql Workbench,我对Yii很陌生。我在尝试这样的事情-- 不知道为什么tblusergroup中没有保存数据。尽管tblcompany中完美添加了数据,但请提供帮助:/可能您的$b型号未通过验证 放 就在$b->save()之后并查看错误。它必须是空数组才能将模型保存到DB。代码似乎还可以,在try\u catch语句中放入$b->save()以查看一切是否正常。只有当$b->save()返回true并提交事务时,才应该重定向。嗯……耶。我在想为什么b中没有数据。没有彻底了解其他信息。TY neway.附带此消

我对Yii很陌生。我在尝试这样的事情--


不知道为什么tblusergroup中没有保存数据。尽管tblcompany中完美添加了数据,但请提供帮助:/

可能您的$b型号未通过验证


就在
$b->save()之后并查看错误。它必须是空数组才能将模型保存到DB。

代码似乎还可以,在try\u catch语句中放入$b->save()以查看一切是否正常。只有当$b->save()返回true并提交事务时,才应该重定向。嗯……耶。我在想为什么b中没有数据。没有彻底了解其他信息。TY neway.附带此消息,这表明它是空的。。数组(size=0)emptydunno不知道发生了什么,但在完成之后;我删除了这个部分(var_dump($b->getErrors());die();)并运行了代码,它突然工作正常。Thanx很多:)
  public function actionCreate()

{
    $a=new Tblcompany;
            $b= new Tblusergroup;

  $transaction= Yii::app()->db->beginTransaction();

try{
    if(isset($_POST['Tblcompany']))
    {

                    $a->attributes=$_POST['Tblcompany'];

        if($a->save()){

         $b->company_code= $a->company_code;

                  $b->usergroup_code='Admin';

                  $b->save();

                      $transaction->commit();


            $this->redirect(array('view','id'=>$a->company_code));

            }
    }

    $this->render('create',array(
    'a'=>$a,
            'b'=>$b,
    ));

 }catch(Exception $error){

  $transaction->rollback();
    }

}
var_dump($b->getErrors());
die();