So resources :products will create 7 different restful routes for CRUD
operations for resource products.
For example: products GET /products(.:format) products#index
So restful route includes only controller name within itself and :id for
operation like edit, show, update, delete.
When i create *non-restful* routes in rails for example: get
'':controller/:action/:id'' i only can see difference that i
*must*explicitly write
:action, so that ":action" makes this route non-restful?
*So as i get this, first requirement for route(URL) to be restful is that
route can''t contain action name?* *Question 1*
Second requirement for route to be restful is that action corresponding to
route must "play by restful rules" in another word,
for example a GET should not leave side-effects on the server, but just
retrieve data.
So if i have /products(.:format) products#index and within index action i
saved something into DB, *than above route is just looks like restful route
but in fact it isn''t*? *Question 2*
I know that i can pass to restful route additional parameters, for example:
link_to "Show", products_path(id: 5, a: "aaaa", b:
"bbbb") so now URL is:
products/5?a=aaaa&b=bbbb.
So am i violating restful here, or this route is still restful? *Question 3*
To me seems that i don''t need *non*-restful routes at all, when i can
make
a bunch of restful routes with construct like following?(and other similar
construct)
*Question 4*
resources :products do
member do
get ''preview''
endend
Please don''t redirect me to http://guides.rubyonrails.org/routing.html
i read it multiple times :)
--
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to
rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit
https://groups.google.com/d/msgid/rubyonrails-talk/d30664c9-bd72-4268-8f0b-58ede1d76570%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.