2013-08-05 3 views
3

Я хочу, чтобы добавить пользовательский HTTP глагол рельсы 4 вот мой routes.rbКак добавить пользовательский глагол (HTTP метод запроса) для rails4

ring "/session/" => "calls#ringing" 

, и я также помещаю этот код инициализаторы

%w(ring busy).each do |method|                                                    
    ActionDispatch::Request::HTTP_METHODS << method.upcase                                              
    ActionDispatch::Request::HTTP_METHOD_LOOKUP[method.upcase] = method.to_sym                                         
end 

Когда я пытаюсь запустить приложение, у меня есть эта ошибка.

undefined method `ring' for #<ActionDispatch::Routing::Mapper:0x000000035c4150> 

Мне действительно нужно использовать этот пользовательский глагол «КОЛЬЦО».

+0

Я исправил эту проблему, добавив к маршрутам этой строки матча «/ сессия /: SessionID»: в => «вызывает # инициировать» ,: via =>: ring – pahan40

+0

вы можете просто создать свои собственные HTTP-методы, подобные этому ...? Я имею в виду, что это может сработать, но разве это даже имеет смысл? – sevenseacat

ответ

3

Я исправил эту проблему, добавив к маршрутам этой строки

match '/session/:sessionid', :to => 'calls#initiate', :via => :ring 
+1

, пожалуйста, примите этот ответ (зеленая галочка). Это позволяет ссылаться на Q & A во флагах для дубликатов и т. Д. (ЭТО не является обманом, но вопрос, который я рассматриваю в другом месте) – onebree