Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 试图破坏模型,但参数数量错误(0表示1)_Ruby On Rails - Fatal编程技术网

Ruby on rails 试图破坏模型,但参数数量错误(0表示1)

Ruby on rails 试图破坏模型,但参数数量错误(0表示1),ruby-on-rails,Ruby On Rails,我不确定为什么会出现此错误: wrong number of arguments (0 for 1) app/models/user.rb:38:in `sign_out_by_guid' app/helpers/user_helper.rb:11:in `sign_out' app/controllers/users_controller.rb:18:in `destroy' 我的代码: def self.sign_out_by_guid(guid) puts 'currently

我不确定为什么会出现此错误:

wrong number of arguments (0 for 1)

app/models/user.rb:38:in `sign_out_by_guid'
app/helpers/user_helper.rb:11:in `sign_out'
app/controllers/users_controller.rb:18:in `destroy'
我的代码:

def self.sign_out_by_guid(guid)
    puts 'currently in sign_out_by_guid' + guid
    u = User.where("guid = ?", guid) 
    puts u.inspect
    puts 'before destroy'
    u.destroy
    puts 'called destroy'
  end
我可以看到除最后一个“destroy”之外的所有put输出

因此,这意味着对
u.destroy
的调用肯定是问题所在

如果我尝试在
rails控制台
中获取一条记录,并在用户身上调用destroy,效果会很好


这可能是什么?

u
用户
的集合,但需要在单个用户上调用,或在
用户
的基础上调用。您可以执行以下任一操作:

u = User.where("guid = ?", guid).first

检查user.rb。 确保你的情人是

dependent: :destroy
不是


这回答了你的问题吗?别忘了
:)
dependent: :destroy
dependent: destroy