Yii2获取post请求值不工作

Yii2获取post请求值不工作,yii2,yii2-advanced-app,Yii2,Yii2 Advanced App,为什么Yii::$app->request->post()不工作 表格: 但是,print_r的输出(Yii::$app->request->post())是: Array ( [_csrf-backend] => OGd0emxoOHgJEh8ICFloPlYvJg8BEHk.VjVAMx0hTD9CKgIDNSdVOg== [AuthItemChild] => Array ( [parent] => admin

为什么
Yii::$app->request->post()
不工作

表格:

但是,
print_r的输出(Yii::$app->request->post())是:

Array
(
    [_csrf-backend] => OGd0emxoOHgJEh8ICFloPlYvJg8BEHk.VjVAMx0hTD9CKgIDNSdVOg==
    [AuthItemChild] => Array
        (
            [parent] => admin
            [child] => Array
                (
                    [0] => admin
                    [1] => create-branch
                )
        )
)

基于您的
打印(Yii::$app->request->post())您应该调用的输出:

$authItemChild = Yii::$app->request->post('AuthItemChild');
echo $authItemChild['parent']; // should show 'admin'

由于您正在加载带有帖子的模型,我想您应该显示加载的结果,而不是再次尝试获取帖子:

if ($model->load(Yii::$app->request->post())){

    $parent =  $model->parent;
    echo $parent;

    $x = $model->child;
    print_r($x);
    exit;
}

我试图以同样的方式获得价值。我透露的是 $app->request->post()(Yii2.0.10)与文本和选择字段的工作方式不同

  • 文本字段通过
    $model->load(Yii::$app->request->post())绑定。
  • 对于selects更好的方法是获取值为
    $model->parent=$request->post(“parent”)
    ,并显式设置名称:
    默认情况下,ActiveForm将名称确定为
    YouModelName[NameOfField]

  • 还有我如何计算孩子的数量呢?
    count($authItemChild['child')
    是的,这很好,有些时候yii官方文件偏离了正确的方向,就像他们描述的那样,实际的解决方案是不同的。不,不是,那里的描述是正确的
    post()
    直接等同于$\u post变量。@Bizley我也有同样的问题,但它仍然不起作用。
    $authItemChild = Yii::$app->request->post('AuthItemChild');
    echo $authItemChild['parent']; // should show 'admin'
    
    if ($model->load(Yii::$app->request->post())){
    
        $parent =  $model->parent;
        echo $parent;
    
        $x = $model->child;
        print_r($x);
        exit;
    }