2012-01-13 157 views
2

现在我正在尝试为我的应用编写自己的自定义Rails路由,但由于某种原因,当我在非资源性路由中编写代码时,我无法获取POST请求(或任何GET请求就此而言)转到我指定的行动。我尝试使用via关键字,并尝试使用条件散列,但是当我运行耙路线时,我没有看到路由旁边显示POST方法。非资源路由和POST

下面的代码:

#config/routes.rb 

get "transactions/:id/process", :to => "transactions#payment", :as => :transaction_process,:via => [:get, :post], :conditions => {:method => :post } 

我尝试使用只能通过,只有条件,既不这些工作。我有我发送给此操作的形式,但我得到的错误:

No route matches [POST] "/transactions/8/process" 

没有任何人有任何想法我怎么能得到Rails的路由POST请求URL以便和我的交易付款#行动?

感谢

回答

4

get方法在你的路由宣告一个路由,在这种情况下是一个GET请求。如果您想在一行中定义自定义GET和POST,则可以使用match

Rails Guide

匹配 '照片/节目'=> '照片#秀',:通过=> [:得到,张贴]

+0

非常感谢,正是我一直在寻找 – Sid 2012-01-13 03:53:17