【发布时间】:2015-10-22 08:14:19
【问题描述】:
我在使用 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();
}
}
这有点奇怪,因为当我在 redirect()->back() 之前转储 Session::all() 时,_old_input 是存在的
但是当我在我的函数 create() 上转储 Session::all() 时,_old_input 是空的。
即使我跳过验证并使用
redirect()->back()->withInput();
我还是遇到了同样的问题,旧值输入为空
这是我的表单视图
有人知道我做错了什么吗?
谢谢你
【问题讨论】:
-
你让它工作了吗?我刚刚遇到了同样的问题。
标签: php laravel-5.1