YII2同时多行更新
YII2 simultaneous multiple row update
我在 GridView 中列出了数据库中的多行数据。现在我需要更新 GridView 中的某些字段(所有相同类型,即具有相同的名称但不同的值)并更新数据库中的值。物质中的细胞return编辑如下:
return Html::input('text', '['.$data->country_id.']country_polity', $data->country_polity, ['class' => 'form-control']);
所以总的来说,我想做的是在 GridView 中显示国家政治,并让用户有可能在 GridView 中更新这些值。
我浏览了各种指南(下面的示例),所有指南都是关于将数据插入数据库,而不是更新。然而,我无法从这些指南中得到实现来实现我的目标。
http://www.yiiframework.com/wiki/666/handling-tabular-data-loading-and-validation-in-yii-2/
loadMultiple()
对我来说 return 没有任何意义,可能是由于识别需要更改价值观的国家/地区的方式不准确。
那么我该如何进行呢? foreach
每个 $_POST
项目并将它们单独保存到匹配的数据库行?
我想你可以在你的控制器中这样做。
首先,您可以使用
从 $_POST 获取模型
$post = Yii::$app->request->post();
$yourModels = $post['yourModelName'];
然后就
foreach ($yourModels as $model) {
model->save(false);
}
我在 GridView 中列出了数据库中的多行数据。现在我需要更新 GridView 中的某些字段(所有相同类型,即具有相同的名称但不同的值)并更新数据库中的值。物质中的细胞return编辑如下:
return Html::input('text', '['.$data->country_id.']country_polity', $data->country_polity, ['class' => 'form-control']);
所以总的来说,我想做的是在 GridView 中显示国家政治,并让用户有可能在 GridView 中更新这些值。
我浏览了各种指南(下面的示例),所有指南都是关于将数据插入数据库,而不是更新。然而,我无法从这些指南中得到实现来实现我的目标。
http://www.yiiframework.com/wiki/666/handling-tabular-data-loading-and-validation-in-yii-2/
loadMultiple()
对我来说 return 没有任何意义,可能是由于识别需要更改价值观的国家/地区的方式不准确。
那么我该如何进行呢? foreach
每个 $_POST
项目并将它们单独保存到匹配的数据库行?
我想你可以在你的控制器中这样做。 首先,您可以使用
从 $_POST 获取模型$post = Yii::$app->request->post();
$yourModels = $post['yourModelName'];
然后就
foreach ($yourModels as $model) {
model->save(false);
}