Ruby on Rails - 路由



路由模块在原生 Ruby 中提供 URL 重写。它是一种将传入请求重定向到控制器和操作的方式。它取代了 mod_rewrite 规则。最重要的是,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

示例

让我们考虑我们的库管理应用程序包含一个称为 BookController 的控制器。我们必须为在 BookController 类中定义为方法的那些操作定义路由。

在 library/config/ 目录中打开 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

接下来是什么?

接下来,我们将创建代码来生成用于显示数据和从用户那里获取输入的屏幕。

广告
© . All rights reserved.