Laravel 5.4使用请求并使用Illuminate \ Http \ Request;不能同时工作

问题描述 投票:1回答:2

我无法让我的命名空间同时工作。什么似乎是问题?如果我使用use Illuminate\Http\Request;并注释掉use Request。我在函数1上的代码有效。当我使用函数2时会产生错误(Non-static method Illuminate\Http\Request::file() should not be called statically

当我使用use Request;并注释掉use Illuminate\Http\Request然后使用函数1时,我得到这个错误(Call to undefined method Illuminate\Support\Facades\Request::hasFile())。当我使用函数2时,代码工作得很好。

使用的命名空间:

   use Illuminate\Http\Request;
   use Request;

功能1:

public function PharmaaddList(Request $request)
  {
    if($request->hasFile('medicines')){

        #Code Here
    }
}

功能2:

 public function PharmaImageUpload(Request $request)
{
    $fileupload = Request::file('fileupload');
    #Code Here
}
laravel laravel-5.4
2个回答
3
投票

您需要为其中一个类别名,以便在同一个文件中使用它们:

use Illuminate\Support\Facades\Request as RequestFacade;
use Illuminate\Http\Request;

...

public function PharmaImageUpload(Request $request)
{
    $fileupload = RequestFacade::file('fileupload');
}

0
投票

您只需要使用它们中的一个类,或者您需要为其中一个类添加别名以在同一文件中使用它们

像这样

    public function PharmaaddList(Request $request)
      {
        if($request->input('medicines')){

            #Code Here`enter code here`
        }
    }


public function PharmaImageUpload(Request $request)
{
    $fileupload = $request->input('fileupload');
    #Code Here
}
© www.soinside.com 2019 - 2024. All rights reserved.