我是Laravel世界的新手,我有一個目前無法解決的問題。驗證後在控制器中獲取表格輸入
我的問題是: 如何在驗證失敗後訪問控制器的create()
函數中提交的值?
以下是我有:
- PostsController,在routes.php文件
- 定義爲資源在控制器我常用的方法
create()
和store()
等
下面是一些代碼:
//PostsController
public function create()
{
//Here I need to get the inputs
return view('posts.create');
}
public function store(Requests\PostsRequest $request)
{
//store actions
}
我已創建
public function rules(){
$rules = [
'category_id'=>'required',
'name'=>'required|min:3',
'description'=>'required'
];
return $rules;
}
如果一切順利的進入已被存儲到數據庫,但如果驗證失敗,它加載的create()
一些驗證消息:其中有像一些規則PostsRequest類。 我需要在窗體中加載所選類別的祖先,這應該通過知道提交的category_id
元素的值來實現。
我試過到目前爲止:
試圖在創造像這樣添加參數:
public function create(Requests\PostsRequest $request){...}
但去無限循環。我明白爲什麼因爲控制器的資源定義,並「認爲」它是存儲方法。
試圖打印門面
Input::all()
但它是空的把我的:
public function create(){ $request = new \Request(); //print $request }
但它不工作,無論是我認爲這是正確的方式。
所以任何想法如何獲得這些值在控制器將高度讚賞。
請參閱我的評論到其他答案 – Kbaum