我是 Laravel 的新手,我在存储和更新模型方面遇到了问题。

这是我的存储方法

 public function store(Request $request) 
{ 
 
    $input = Request::all(); 
 
    Klijent::create($input); 
 
    return redirect('klijenti'); 
 
} 

而且我必须包含 use Request; 才能使其正常工作。

这是我的更新方法

    public function update(Request $request, $id) 
{ 
    // 
 
    $klijent = Klijent::find($id); 
 
    $klijent->update($request->all()); 
 
    return redirect('klijenti/'. $id); 
 
} 

而且我必须包含 use Illuminate\Http\Request; 才能使其正常工作。

但如果我不使用第一个,我在使用存储方法时会收到此错误:

Non-static method Illuminate\Http\Request::all() should not be called statically, assuming $this from incompatible context 

如果我不使用第二个,则在使用更新方法时会出现此错误:

Call to undefined method Illuminate\Support\Facades\Request::all() 

如果我同时使用它们,则会出现此错误:

Cannot use Illuminate\Http\Request as Request because the name is already in use 

请您参考如下方法:

你需要调用像

这样的非静态方法
$input = $request->all(); 

在你的第一个函数中。第二个错误是因为 Illuminate\Support\Facades\Request 没有要调用的 all 方法。第三个错误是命名空间冲突,因为在 PHP 中不能有两个同名的类。


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!