Laravel显示重定向到url


Laravel displays redirecting to url

大家好,我试图验证我的输入,但我有奇怪的问题重定向时,验证失败laravel显示"重定向到http://localhost:8888/public/admin/categories/create"页面加载之前。这是我在控制器中的验证:

$rules = [
            'name' => 'required | unique:categories'
        ];
        $input = Input::all();
        $validator = Validator::make($input, $rules);
        if($validator->fails()){
            return Redirect::route('admin.categories.create')->withErrors($validator)->withInput();
        }

如何删除此消息并只显示有错误的页面?

当你要求Laravel重定向时,它会做两件事:

  • 发送一个带有目标URL的Location头——这是默认的重定向方法
  • 使用Javascript输出带有重定向的HTML -这是在无法发送header的情况下的备用机制

如果你看到回退机制,这意味着有问题发送头。最常见的原因是你的代码在重定向头发送之前输出了一些东西。启用错误报告(error_reporting(E_ALL)),你可能会得到一个警告说"报头已经发送"。