我有方法存储:
public function store(CreateProductRequest $request){
$product = new Product($request->all());
Auth::user()->products()->save($product);
Session::flash('status3', 'Produkt został dodany poprawnie');
return redirect('warehouse');
}
在这个方法中,我使用Auth::user
添加了向数据库添加新记录的用户的名称。
我想在方法更新中做同样的事情:
public function update($id, CreateProductRequest $request){
$product = Product::find($id);
$products = new Product($request->all());
Auth::user()->products()->update($products);
Session::flash('status4', 'Produkt został zaktualizowany poprawnie');
return redirect('warehouse');
}
模型中的和方法产品用户:
public function products(){
return $this->hasMany('App\Product');
}
Laravel回来了:
类型错误:参数1传递给 Illuminate \ Database \ Eloquent \ Relations \ HasOneOrMany :: update()必须是 类型数组,给定对象,调用...
答案 0 :(得分:0)
更改
Auth::user()->products()->update($products);
到这个
Auth::user()->products()->update([
'article_id' => $request->get('article_id'),
'category_id' => $request->get('category_id'),
'quantity' => $request->get('quantity'),
'warranty' => $request->get('warranty')
]);