Ruby on rails 使用TinymceSpellcheck时ArgumentError

Ruby on rails 使用TinymceSpellcheck时ArgumentError,ruby-on-rails,tinymce,spell-checking,Ruby On Rails,Tinymce,Spell Checking,我想使用“tinymce\u拼写检查”来使用我的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']

我想使用“tinymce\u拼写检查”来使用我的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'

你能告诉我如何解决这个问题吗?我提供了两个参数,但是,我一次又一次地收到相同的错误消息。

好吧,问题可能是
args
为空或为零,所以当你调用它的splat时,它会变成零个参数。因此,您唯一的参数是“方法”,并且您会得到一个ArgumentError

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`