将模型保存在循环中yii

Dev*_*per 2 arrays models yii saving-data

我需要用逗号分隔几次保存字段值.我正在获取值,但我需要在循环中将每个值存储在模型中.

$subModel->name = $_POST['Model']['keywords'];
$keyword = explode(",", $subModel->name);    
for ($i=0; $i<=sizeof($keyword)-1; $i++)
{
    //echo $keyword[$i]."<br/>";
    $subModel->name = $keyword[$i];
    $subModel->save();
}
Run Code Online (Sandbox Code Playgroud)

它只存储最后一个值,任何人都可以告诉我如何在循环中的子模型中为每个值多次存储到我的模型中.

谢谢

Jon*_*Jon 8

您需要$subModel->isNewRecord = true在每次迭代中设置并取消设置(或手动设置为您选择的值)模型的id字段.它看起来像这样:

for ($i=0; $i<=sizeof($keyword)-1; $i++)
{
    // if $subModel->name is not the primary key for that model, unset the PK here:
    // $subModel->id = null
    $subModel->name = $keyword[$i];
    $subModel->isNewRecord = true;
    $subModel->save();
}
Run Code Online (Sandbox Code Playgroud)