路由模塊提供了用原生Ruby重寫URL的功能。這是一種將傳入請求重定向到控制器和操作的方法。它取代了mod_重寫規則。最重要的是,Rails的路由可以與任何web伺服器一起工作。路由在app/config/Routes.rb中定義。
將創建路由看作是爲您的請求繪製地圖。地圖根據一些預定義的模式告訴他們去哪裡−
Rails.application.routes.draw do Pattern 1 tells some request to go to one place Pattern 2 tell them to go to another ... end
Example
讓我們考慮一下庫管理應用程式包含一個名爲BookController的控制器。我們必須爲那些在BookController類中定義爲方法的操作定義路由。
打開library/config/directory中的routes.rb文件並使用以下內容對其進行編輯。
Rails.application.routes.draw do get 'book/list' get 'book/new' post 'book/create' patch 'book/update' get 'book/list' get 'book/show' get 'book/edit' get 'book/delete' get 'book/update' get 'book/show_subjects' end
routes.rb文件定義了應用程式中可用的操作和操作類型,如get、post和patch。
使用下面的命令列出所有已定義的路由,這些路由對於跟蹤應用程式中的路由問題很有用,或者爲您提供對要熟悉的應用程式中的url的良好概述。
library> rake routes
What is Next?
接下來,我們將創建代碼來生成螢幕以顯示數據並從用戶處獲取輸入。