1
我routes.php文件laravel 4不能進入指定控制器方法
Route::get('course/{id}', '[email protected]'); Route::get('course/{id}/{comment_type}', '[email protected]'); Route::get('course/search/{key_word}', '[email protected]');
我CourseController.php有這些方法
public function show($id,$comment_type=1) { //do something } public function search($key_word) { //do something }
我想進入
search
方法。但每次我調用course/search/{key_word} //search method in CourseCOntroller
它會進入
course/{id}/{comment_type} //show method in CourseCOntroller
我調試源代碼。我發現
UrlMatcher
有一個matchCollection
函數,我發現原因,laravel生成一個錯誤Regular Expression
當我調用course/search/{key_word}
時,它會生成一個像這樣的正則表達式?#^/course/(?P<id>[^/]++)/(?P<comment_type>[^/]++)$#s
我不知道這個正則表達式如何產生。
我該如何解決這個問題,當我調用
course/search/{key_word}
時,它會調用search
方法。
感謝的人,我只是覺得L4可以做的更靈活:) – diligent
嗯,這是。與 - > where()在自定義路由綁定中,您可以按照您喜歡的方式將其扭曲;) –