我有这个错误
ArgumentError (wrong number of arguments (1 for 0)):
lib/law/production.rb:20:in `clone'
lib/law/production.rb:20:in `clone_law'
lib/law/production.rb:11:in `initialize'
app/controllers/laws_controller.rb:86:in `new'
app/controllers/laws_controller.rb:86:in `prod_law'
app/controllers/laws_controller.rb:44:in `create'
使用时
module Law
class Production
attr_accessor :law
attr_accessor :creator
def initialize(law,current_user)
@law = law
@creator = current_user
clone_law
end
def current__user
User.find_by_authentication_token(session[:_csrf_token])
end
def clone_law
clone(@law)
end
end
end
其中clone
,create
,prod_law
是一些方法
我假设Rails
期待hash
,但我不明白为什么
答案 0 :(得分:4)
首先,clone
是标准的Ruby方法。
其次,它预计没有争论
all(如错误消息所示),应该在要克隆的对象上调用它,如下所示:
@law.clone