我正在使用Twitter gem,我想从我的Friend
模型中获取用户列表并测试他们是否正在关注Twitter用户,然后...如果Twitter取消关注API返回false
。麻烦的是,似乎我在下面使用的代码永远不会评估为false,即使API返回false
所以它总是还原为else
部分。
我尝试过类似if ret == 'false'
的变体而且没有用。
ret = @t.friendship?(@id_str, f.screen_name)
if ret == false
@t.unfollow(f.screen_name)
puts "#{f.screen_name} has been unfollowed."
self.update_unfollowed_column(f.id, false)
else
self.update_following_column(f.id)
end
在控制台中,如果我这样做:
r = t.friendship?('user1', 'user2')
=> false
然后,我可以这样做:
r == false
=> true
所以,我不确定我的Friend
模型中的代码到底出了什么问题。
答案 0 :(得分:0)
在if语句之前,尝试调试friendship?
方法的结果:
logger.info ret.class.name # => FalseClass if it's actually false,
# => String if it's 'false'
logger.info ret.inspect # => "false" if it's false.
logger.info((ret == false).inspect) # => Should be "true"