【问题标题】:Http\Request and Facades\Request conflictHttp\Request 和 Facades\Request 冲突
【发布时间】:2017-09-07 15:41:33
【问题描述】:

如何同时使用Http\RequestFacades\Request

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

在我的自定义登录中,我使用Laravel-Throttle 不尝试登录太多次。问题是当不使用Http\Request 时出现错误提示

FatalThrowableError 类型错误:传递给 App\Http\Controllers\Controller::validate() 的参数 1 必须是 Illuminate\Http\Request 的实例

如果使用Facades\Request,会出现以下错误

ErrorException 非静态方法 Illuminate\Http\Request::instance() 不应被静态调用"

这是我的代码块,

我使用的是 laravel 5.4

【问题讨论】:

  • 请添加代码而不是图片

标签: laravel


【解决方案1】:

您可以为冲突的命名空间之一设置别名并使用它

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

然后,当您需要在 Illuminate\Http 命名空间中使用 Request 时,您可以简单地使用 HttpRequest

或者如果你可以内联命名空间

【讨论】:

    【解决方案2】:

    直接调用类以避免命名空间问题:\Illuminate\Http\Request::instance();

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-05-30
      • 1970-01-01
      • 2017-06-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-20
      • 1970-01-01
      相关资源
      最近更新 更多