Rails:控制器方法参数被解释为文件格式

时间:2014-12-16 01:13:41

标签: ruby-on-rails controller

当我调用redirect_to时,它正在解释我试图传递给控制器​​方法的参数,作为路径的文件格式。这导致以下路线:

http://0.0.0.0:3000/application/pay.1798

其中1798是我试图传递给redirect_to引用的Controller方法的对象的id。

以下是redirect_to

redirect_to pay_path(@school_application.id)

这是另一个应该使用传递给redirect_to

的id的控制器方法
   def pay
     @school_application = SchoolApplication.find(params[:id])
   end

但是,在调用params时,实际上并没有设置pay_path哈希,而只是将变量解释为文件格式。

1 个答案:

答案 0 :(得分:0)

我传入的参数错误,因为我没有将id分配给哈希中的键。

redirect_to pay_path(:id => @school_application.id)

这解决了它。