第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

laravel 路由沖突

laravel 路由沖突

PHP
慕運維8079593 2019-03-16 15:03:25
跟著網上視頻學習laravel5.4,寫了下面兩行代碼。Route::get('/posts/{post}','AppHttpControllersPostController@show'); Route::get('/posts/create','AppHttpControllersPostController@create'); 然后視頻中訪問localhost/laravel/public/posts/create 結果是成功的,而我訪問卻跳轉到了show中,求解??
查看完整描述

7 回答

?
慕少森

TA貢獻2019條經驗 獲得超9個贊

加一個正則表達式限制就好了,默認情況下,laravel 的路由匹是從上往下的,匹配到符合的第一條后,就不會往下匹配了:


//假設post為int
Route::get('/posts/{post}','AppHttpControllersPostController@show')->where('post', '[0-9]+');
Route::get('/posts/create','AppHttpControllersPostController@create');
查看完整回答
反對 回復 2019-03-18
?
慕斯王

TA貢獻1864條經驗 獲得超2個贊

你的第一個路由{post} 里面的內容可以看做是任意要匹配的 比如是create 你的第一個路由是可以替代第二個路由寫法的

查看完整回答
反對 回復 2019-03-18
?
千萬里不及你

TA貢獻1784條經驗 獲得超9個贊

  • 第一個條路由中的 {post} 是通配,會把 create 作為 {post} 傳入到你的AppHttpControllersPostController@show 方法。
  • 最簡粗暴單的解決方法,是這兩條路由位置對調,create 那條放在第一即可實現。
查看完整回答
反對 回復 2019-03-18
?
慕容708150

TA貢獻1831條經驗 獲得超4個贊

樓主將create的路由放到show的上面就好了

查看完整回答
反對 回復 2019-03-18
?
藍山帝景

TA貢獻1843條經驗 獲得超7個贊

代碼規(guī)范一下哈哈

Route::get('/posts/{post}/show','AppHttpControllersPostController@show')->where('post', '[0-9]+');
查看完整回答
反對 回復 2019-03-18
  • 7 回答
  • 0 關注
  • 653 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號