[英]Yii2 get post request value not working
為什么Yii::$app->request->post()
無效?
形成:
<?php $form = ActiveForm::begin(); ?>
<?= $form->field($model, 'parent')
->dropDownList($model->AuthItemDropdown
);
?>
<?= $form->field($model, 'child[]')
->dropDownList($model->AuthItemDropdown,
['multiple'=>'multiple']
);
?>
控制器:
public function actionCreate(){
$model = new AuthItemChild();
if ($model->load(Yii::$app->request->post())){
$parent = Yii::$app->request->post('parent');
echo $parent; // show nothing
$x = Yii::$app->request->post('child');
print_r($x);// show nothing
exit;
但是print_r(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
)
)
)
基於你的print_r(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())
綁定$model->load(Yii::$app->request->post())
$model->parent=$request->post("parent")
,名稱顯式設置: <?= $form->field($model, 'parent') ->dropDownList($model->AuthItemDropdown,['id' => 'parent','name'=>'parent'] ); ?>
<?= $form->field($model, 'parent') ->dropDownList($model->AuthItemDropdown,['id' => 'parent','name'=>'parent'] ); ?>
默認情況下,ActiveForm將名稱確定為YouModelName[NameOfField]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.