【问题标题】:Upgrade to Laravel 5.1 - Method [validator] does not exist升级到 Laravel 5.1 - 方法 [validator] 不存在
【发布时间】:2015-06-19 20:18:58
【问题描述】:

昨晚,我将应用程序从 5.0 升级到 5.1 。

一切似乎都运行良好,除了注册。

在输入信息并注册时,我收到此错误:

BadMethodCallException in Controller.php line 282:
Method [validator] does not exist.

无法弄清楚我必须在哪里解决这个问题。

RegistersUsers.php

    namespace Illuminate\Foundation\Auth;

    use Illuminate\Http\Request;
    use Illuminate\Support\Facades\Auth;
    use App\Services\Registrar;

    trait RegistersUsers
    {
        use RedirectsUsers;

    public function postRegister(Request $request)
        {
            $validator = $this->validator($request->all());

            if ($validator->fails()) {
                $this->throwValidationException(
                    $request, $validator
                );
            }

            Auth::login($this->create($request->all()));

            return redirect($this->redirectPath());
        }
}

Controllers.php

public function __call($method, $parameters)
    {
        throw new BadMethodCallException("Method [$method] does not exist.");
    }

【问题讨论】:

  • Controller.php 的第 282 行是什么?
  • @FrickX 更新了问题
  • 然后他们改变了调用验证器的方式。通常你应该在化身中找到这些东西

标签: laravel laravel-5


【解决方案1】:

你读过upgrade docs吗?

您需要从Services/Registrar.php 中取出validator()create() 并将它们放入Controllers/Auth/AuthController.php。就是这样。

【讨论】:

    猜你喜欢
    • 2016-05-06
    • 2017-08-24
    • 2016-03-31
    • 2018-07-02
    • 2016-05-11
    • 2018-04-21
    • 2018-10-04
    • 2015-08-26
    • 2019-12-05
    相关资源
    最近更新 更多