2

フィールド値をコンマで区切って数回保存する必要があります。値を取得していますが、各値をモデルのループに格納する必要があります。

$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();
}

これは最後の値のみを格納しています。ループ内のサブモデルの値ごとに、モデルに複数回格納する方法を教えてもらえますか。

ありがとう

4

1 に答える 1

9

各反復で設定する必要があり$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();
}
于 2012-12-05T12:19:35.963 に答える