Ruby on rails 冗余铁路线路

Ruby on rails 冗余铁路线路,ruby-on-rails,controller,routes,Ruby On Rails,Controller,Routes,为什么我的在访问/product/:product时会返回一个未定义的局部变量,这些路径包括: get 'product/:product' => 'charges#new' post 'product/:product' => 'charges#create' 但当我添加这些时,它会起作用吗 resources :charges, :only => [:new, :create] 当您使用get和post方法时,我想清理一下这个问题,您不会创

为什么我的
在访问/product/:product时会返回一个未定义的局部变量,这些路径包括:

  get 'product/:product'      => 'charges#new'
  post 'product/:product'     => 'charges#create'
但当我添加这些时,它会起作用吗

  resources :charges, :only => [:new, :create]

当您使用
get
post
方法时,我想清理一下这个问题,您不会创建路径帮助程序,也就是说,没有
charges\u path
方法,除非您提供一个带有
:as
选项的字符串


因此,如果没有
charges\u path
方法,ruby会认为它是一个变量的名称,因此您会得到错误。

将@charges实例从控制器传递到视图。不确定这是否会解决您的问题,但我注意到,当您手动创建路由与使用资源助手时,路径助手是不同的。资源路由将创建费用路径和费用路径,但手动获取/发布只能创建费用路径。因此,请检查您的路径帮助程序。