我有这个循环保存记录与活动记录:
foreach ($array as $value) {
$modelImagen->url = $value;
$modelImagen->inmueble_id_inmueble = '1';
$modelImagen->save();
}
我有问题,只保存一条记录,我认为可能会覆盖数据并保存最后一条。也许我的循环有问题?所有的表id都是自动递增的。
谢谢。
您需要创建额外的记录/行,您当前的循环覆盖相同的记录/行。
您可以使用以下任何一种方法将所有url值保存在新行
foreach ($array as $value) {
$modelImagen = new ModelImagen() // Your model class
$modelImagen->url = $value;
$modelImagen->inmueble_id_inmueble = '1';
$modelImagen->save();
}
或者你可以使用insert
方法,注意在insert
方法中不执行验证,如果你想要执行验证,你将单独调用validate()
我认为你需要在循环中添加新的AR。例如$modelImagen=new Model;
在每个循环和unset
保存后启动模型
你的代码应该是
foreach ($array as $value) {
$modelImagen = new yourmodelName(); // initiate your model
$modelImagen->url = $value;
$modelImagen->inmueble_id_inmueble = '1';
$modelImagen->save();
unset($modelImagen); // do unset
}