我想更新我的所有记录,其名称就像是引用它的那个。
但是我收到错误说调用未定义的方法save()
这是我的代码
$section = Section1::where('name', 'like', 'ss123')->get();
$section->name = Input::get('name');
请帮助:(
答案 0 :(得分:3)
$section = Section1::where('name', 'like', 'ss123')->get()
会返回一个集合(想象array
)。
因此,您应该使用foreach
遍历集合并将保存应用于集合中的每个对象,如下所示:
foreach($section as $s)
{
$s->name = Input::get('name');
$s->update();
}
然后再次,这对数据库非常友好。
因此,您案例中最合适的操作是批量更新:
Section1::where('name','like','ss1213')->update(['name'=>Input::get('name')]);
答案 1 :(得分:0)
尝试dd($section)
并找到可用的方法来阻止调用未定义的方法。
我假设您使用的是$section->save();
如果你想更新,
使用$section->touch();
或$section->update(array('name' => Input::get'name'));