未定义的局部变量或方法`on'for#<actiondispatch :: routing :: mapper:0x007fd3b4516a00>

时间:2017-07-07 21:01:24

标签: ruby-on-rails routing

我正在尝试将控制器的编辑操作替换为具有额外参数的编辑操作,但是我得到了:

def how_many_measurements(n):
    import math
    if n<2:
        x = 0
    elif n >= 2 and n<=4:
        x = 1
    elif n>4 and n<12:
        x = 2
    else:
        x= math.ceil(math.log((2*n+1),3))
    return x    

这是routes.rb部分:

undefined local variable or method `on' for #<ActionDispatch::Routing::Mapper:0x007fd3b4516a00>

问题是:编辑。使用另一个动作,如:new完美无缺。

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

resources :structures, except: :edit do
  get '/edit/:doctype' => :edit
end

您尝试使用的语法旨在与on: (new|member|collection)一起使用。此处edit不是有效选项。