我有这种方法在第7行报告错误。当我在控制台中单独输入每一行时运行正常,但是当我调用整个deleteUser
方法时出现错误:
NoMethodError:nil的未定义方法`delete':NilClass
1 def self.deleteUser(user_id)
2 @user = User.where(:id => user_id).first
3 players = GameMember.where(:user_id => @user.id, :is_game_over => "FALSE")
4
5 if players.empty?
6 stat = Stat.where(:winners_id => @user.id).first
7 unless stat.nil?
8 stat.delete
9 end
....
答案 0 :(得分:3)
您的unless
需要自己的end
:
if ...
unless stat.nil?
stat.delete
end
end
使用end
表单时,您只能省略x unless y
:
if ...
stat.delete unless stat.nil?
end
(该方法本身缺少end
,但我假设您刚从代码中省略了该部分。)