Рельсы, маршрут отдыха и отдыха
Что-то вроде resources :products
создаст 7 различных маршрутов отдыха для операций CRUD для ресурса products.
Например: products GET /products(.:format) products#index
Таким образом, спокойный маршрут включает в себя только имя контроллера внутри себя и :id
для работы как edit, show, update, delete.
Итак, когда я получу это, первое требование (в рельсах) для маршрута (чтобы быть точно URL), чтобы быть успокоительным, это то, что маршрут не может содержать имя действия? Q1
Второе требование для того, чтобы маршрут был успокоительным, состоит в том, что действие, соответствующее маршруту, должно "воспроизводиться по правилам отдыха", например, в GET
не должен оставлять побочные эффекты на сервере, а просто получать данные. Так что если у меня есть /products(.:format) products#index
и в рамках действия с индексом я что-то сохранил в БД, чем вышеупомянутый маршрут просто выглядит как спокойный маршрут, но на самом деле это не так?
Когда я создаю маршруты без отдыха в рельсах, например: get ':controller/:action/:id'
я вижу только разницу, которую я должен явно написать :action
, чтобы ":action
"делает этот маршрут неспокойным?
Мне кажется, что отдых в рельсах это все о CRUD? Во-вторых, мне вообще не нужны маршруты без отдыха, когда я могу создать несколько маршрутов без отдыха с конструкцией, подобной следующей (и другой подобной конструкции)?
resources :products do
member do
get 'preview'
end
end
С этого момента, и я относительно новичок во всем этом, много читаю о концепции REST, и, если я прав по поводу моего первого вопроса (Q1), это единственная разница между спокойным и не отдыхающим маршрутом в рельсах?