3

'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'

この問題を解決する方法を教えていただけませんか。2つの引数を指定していますが、同じエラーメッセージが何度も表示されます。

4

2 に答える 2

1

まあ、問題はおそらくそれargsが空かゼロであるということです、それであなたがそれにスプラットを呼ぶとき、それはゼロの引数に変わります。したがって、唯一の引数は「メソッド」であり、ArgumentErrorが発生します。

于 2012-11-05T20:27:31.763 に答える
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`
于 2012-11-05T20:53:37.133 に答える