15
A
回答
24
把
match '*path' => 'your_controller#your_action'
在routes.rb中文件的末尾。這一點很重要,因爲路線是從上到下進行的。
也http://guides.rubyonrails.org/routing.html見 - > 3.10
16
對於鐵路4,你需要指定請求類型:
match "*path", to: "application#custom_action", via: :all
正如其他人所說,把這個在你的路由文件的最底部。
2
除了@steel和@awenkhh,我建議加入以下這條路線的控制器操作
respond_to do |format|
format.html
# other formats you already support
format.all { render text: '' }
end
否則,您會得到一些ActionView::MissingTemplate: Missing template
錯誤的格式,你沒有想到。
[rant]對於那些試圖在/wp-admin/css/wp-admin.css
之類嘗試錯誤攻擊向量的人特別有用。我似乎每天都會收到100個關於/wp-admin/*
的請求,這些人來自超級討厭的人,他們顯然希望我能夠獲得更昂貴的Rollbar帳戶計劃。[/ rant]
3
這不是強制性的, match '*path'
聲明。您可以設置任何標誌有:
get "*string1"
或
get "*string2"
Rails會你真正的HTTP查詢分配給您的令牌而得名帕拉姆,例如:
get "*user" => "users#show"
控制檯:
Started GET "/john" ....
Processing by UsersController#show as HTML
Parameters: {"user"=>"john"}
您可以使用多個星號,如get "*id*user"
。但是在這種情況下,你會得到一些不可預知的結果,因爲Rails以「直觀的方式」處理2個或更多星號 - 更多信息請參閱http://guides.rubyonrails.org/routing.html#route-globbing-and-wildcard-segments
相關問題
- 1. Rails路由通過關聯
- 2. Rails路由域通配符
- 3. Rails - 使用通配符路由
- 4. 用戶路由 - Rails
- 5. Rails的路由
- 6. Rails STI路由
- 7. Rails路由掛
- 8. Rails 3.1路由
- 9. Rails 4路由
- 10. Rails 3路由
- 11. 導軌 - 通過Rails的路由
- 12. 的Rails通過錨標識路由
- 13. Rails通用路由防止對/ rails/info/routes的呼叫
- 14. Rails路由請求routes.rb動態路由
- 15. Rails:子路由。沒有路由匹配
- 16. Rails Alias路由 - 無效路由
- 17. Rails 4路由 - 沒有路由匹配
- 18. Rails的路由:錯了路
- 19. Rails的路由路徑
- 20. Rails 5路由 - 我如何在許多資源之間共享通用路由?
- 21. Rails路由,在資源路徑中使用非model_id的路由
- 22. 的Rails 3路由
- 23. Rails路由邏輯
- 24. Rails簡單路由
- 25. 的Rails 3 - 路由
- 26. 在Rails中路由
- 27. Rails路由問題
- 28. Backbone.js和Rails路由
- 29. 的Rails 3路由
- 30. Rails路由問題
Rails 4重定向到root「match」* path「 :重定向('/'),通過::all' – Epigene