Rails: определение метода RESTful http по типу действия - PullRequest
0 голосов
/ 17 июля 2011

Мне просто интересно, есть ли у rails какой-либо встроенный способ определения правильного метода http (get, post, put, delete) по имени действия (?)

Так, например, если бы я былчтобы ввести "new" в качестве действия, есть ли способ, которым rails может понять, что он должен запросить через "get"?

Если нет, вторая проблема ... Я попытался вручную создать хеш, который отобразил остальные действия вих методы по умолчанию, а именно:

actionhash = {
  :index => get,
  :show => get,
  :new => get,
  :create => post,
  :edit => get,
  :update => put,
  :delete => delete
}

Затем этот хеш вызывается (если action =: показать, например)

actionhash[action] action, :id => 123

Сложность заключается в том, что я создаю хеш с помощью get'значения возвращаются с:

неопределенная локальная переменная или метод get для #>

Итак, если нет встроенного способа определения правильного метода,как я могу ввести методы http в хеш?

1 Ответ

1 голос
/ 17 июля 2011
actionhash = {
  :index => :get,
  :show => :get,
  :new => :get,
  :create => :post,
  :edit => :get,
  :update => :put,
  :delete => :delete
}

send(actionhash[action], :id => 123)

Уродливо, хотя.

...