好的我理解这一部分:CRUD动词和动作http://guides.rubyonrails.org/routing.html#crud-verbs-and-actions
如果我转到我所拥有的示例的路径文件,我还会在其中看到资源:订单。
但现在在部分名称_carts的视图中我看到了这段代码:
<%= button_to "Checkout" , new_order_path, method: :get %>
让我感到困惑的是 new_order_path ?那个是从哪里来的?什么Rails惯例规则允许我们纠正这个?特别是“新”来自哪里?
答案 0 :(得分:1)
在路由中使用resources :orders
时,Rails会为新建,创建,显示,更新,销毁,列表和编辑创建7条路由。所有这些都是名称,new_order_path
/ new_order_url
与新操作相关。
答案 1 :(得分:1)
routes.rb
中定义的automatically generated for resources路径助手为{{3}}。您可以通过在命令行执行rake routes
来检查可用的路由助手。它们显示在表格中最左侧的列中。
默认情况下,创建的路径的一般模式是这样的:
new
edit
show
,DELETE上的destroy
,PUT上的update
(很快将成为Rails中的PATCH) 4)index
和POST上的create
。还有以_url
而不是_path
结尾的助手提供绝对网址而不是相对路径。控制器中遇到的特定操作取决于访问这些URL时使用的HTTP谓词(GET,PUT,POST,DELETE等)。