类似的东西resources :products
会为资源的 CRUD 操作创建 7 个不同的 restful 路由products.
例如:products GET /products(.:format) products#index
因此,宁静的路线仅包括其自身的控制器名称和:id
类似的操作edit, show, update, delete.
所以当我明白这一点时,首先要求(在rails中)路线(确切地说是URL)是宁静的,是该路线不能包含动作名称吗?第一季度
路由要宁静的第二个要求是路由对应的动作必须“按宁静规则播放”,例如 aGET
不应该在服务器上留下副作用,而只是检索数据。因此,如果我有/products(.:format) products#index
并且在索引操作中我将某些内容保存到 DB 中,那么上面的路线看起来就像是安静的路线,但实际上不是?
例如,当我在 Rails 中创建非休息路线时:get ':controller/:action/:id'
我只能看到我必须明确编写的差异:action
,因此":action
“使这条路线不休息?
对我来说,在 Rails 中的宁静似乎是关于 CRUD 的一切?第二个我根本不需要非宁静的路线,当我可以用类似以下的构造(和其他类似的构造)制作一堆宁静的路线时?
resources :products do
member do
get 'preview'
end
end
从这一点来看,我对这一切都比较陌生,阅读了很多关于 REST 概念的内容,如果我对我的第一个问题(Q1)是正确的,那么 Rails 中的宁静和非宁静路线之间的唯一区别是什么?