: любой вариант для рельсов 3 маршрута

В rails 2 вы можете использовать: любую опцию для определения настраиваемого маршрута, который отвечает на любой метод запроса, например.

map.resources :items, :member => {:erase => :any}

rails 3, похоже, не поддерживает: любой параметр

resources :items do
  get :erase, :on => :member # works
  any :erase, :on => :member # doesn't work
end

Кто-нибудь знает, была ли эта опция удалена или просто переименована?

Ответ 1

От поиска и просмотра действий get, post, put и delete на самом деле в ActionDispatch, я думаю, все, что вам нужно сделать, это match. Итак:

resources :items do
  get :erase, :on => :member
  match :erase, :on => :member
end

Я не думаю, что синтаксис для соответствия действительно документирован, но маршруты, которые он создает, по крайней мере для меня, что вы ожидаете от метода all

Ответ 3

Матч будет работать, но не в определении ресурсов, к сожалению. Я скорее желаю, чтобы они вернули способ определить get/post, по крайней мере, вместе.