Laravel 5.1表单验证重定向输入问题

时间:2015-10-22 08:14:20

标签: php laravel-5.1

Laravel 5.1 Redirect With Input有问题。我似乎无法从提交的输入中获取旧值。

我一直在研究堆栈溢出中的任何帖子,但仍然遇到这个问题。

这是我的请求控制器

public function create() {
  $this->data["pageDescription"] = "Add new page.";
  $this->data["pageSubtitle"] = $this->data["pageTitle"] . " Add New";
  $this->data["formAction"] = adminRoute("page");
  return view("admin.page.form")->with("data", $this->data)->withInput(Input::old());
}

这是我提交的控制器

public function store(Request $request) {
  Input::flash();

  $validator = Validator::make($request->all(), [
    "title" => "required|max:100",
    "url_title" => "required|max:100",
    "meta_description" => "required|max:50",
    "content_title" => "required|max:100",
    "content_description_id" => "required",
    "status" => "required|in:pending,published",
    "add_more_content" => "required|in:true,false"
  ]);

  if($validator->fails()) {
    return redirect()->back()
              ->with("data", $this->data)
              ->withErrors($validator)
              ->withInput();
  } else {
    return redirect()->back()->withInput();
  }
}

有点奇怪,因为当我在重定向() - > back()之前转储Session :: all()时_old_input存在

enter image description here

但是当我在我的函数create()上转储Session :: all()时_old_input为空。

enter image description here

即使我跳过验证,并使用

redirect()->back()->withInput();

我仍然遇到同样的问题,旧值输入为空

这是我的表单视图

enter image description here

有人知道我做错了吗?

谢谢你

1 个答案:

答案 0 :(得分:0)

您是否收到验证错误?我不是百分百肯定,但我认为SELECT TOP(@MaxNumber) ROW_NUMBER() OVER (ORDER BY t1.number) FROM master..spt_values t1 CROSS JOIN master..spt_values t2 EXCEPT SELECT Id FROM <your_table> 会调用您表单的GET方法。