为什么我在数据库中获得空值?

时间:2015-09-30 05:26:05

标签: php yii2

public function actionEvent()

{
    $event= new Events();
    $address=new Addresses();
    if($event->load(yii::$app->request->post()) && $event->save() && $address->load(yii::$app->request->post()) && $address->save())
    {

        echo $event->name;
        return $this->render('sucess',['event'=>$event]);

    }
    else{
        return $this->render('event',[
            'event'=>$event,
        'address'=>$address,
        ]);
    }
}

我没有获得我在视图中发布的记录,我在数据库中得到了null。为什么?

1 个答案:

答案 0 :(得分:2)

我认为您应该在模型中指明要加载的表单元素的名称

鉴于yii2 load documentation

  

public boolean load ( $data, $formName = null )

     

用于将数据加载到模型中的表单名称。如果没有设定,    使用formName()。

在这种情况下,表单名称与模型

不匹配

试试这种方式

if($event->load(yii::$app->request->post('event')) && $event->save() && $address->load(yii::$app->request->post('eddress')) && $address->save())

或者你应该从

获得价值
 load($_POST['event']) 

 load($_POST['address'])  

并为您的建议正确分配。