我想使用'tinymce_spellcheck'在我的tinymce编辑器中使用拼写检查按钮。 我在控制器中写道:
def spellcheck
data = ActiveSupport::JSON.decode(request.raw_post)
args = data['params'].to_a.first
spellcheck = TinymceSpellcheck.new({}, :raspell)
result = spellcheck.send(data['method'].underscore,*args) #****---- THIS LINE****
render :json => { :id => data['id'], :result => result, :error => nil }.to_json
end
我收到以下错误消息:
ArgumentError (wrong number of arguments (1 for 2)):
app/controllers/members_controller.rb:127:in `spellcheck'
你会好心地告诉我如何解决这个问题吗?我提供了两个参数,然而,我一次又一次地收到相同的错误消息。
答案 0 :(得分:1)
好吧,问题可能是args
为空或为零,所以当你调用它上面的splat时,它会变成零参数。因此,您唯一的参数是'方法',并且您得到一个ArgumentError。
答案 1 :(得分:0)
def spellcheck
`data = ActiveSupport::JSON.decode(request.raw_post)
args = data['params'].to_a.first
spellcheck = TinymceSpellcheck.new({}, :raspell)
result = spellcheck.send(data['method'].underscore,*args)
render :json => { :id => data['id'], :result => result, :error => nil }.to_json
end`
The line `args = data['params'].to_a.first` was changed to`args = data['params'].to_a`