在我的一个 Controller 中,我正在做:

user = User.find_or_initialize_by_email(@omniauth['info']['email'])

然后,我需要知道是否找到或初始化了记录。我已经试过了:
if user
else
end

但这是行不通的,因为总会有用户。什么是正确的方法来知道是否找到或初始化找到或初始化?

谢谢

最佳答案

您应该可以使用persisted?:

if user.persisted?

edgeguides.rubyonrails.org说了有关find_or_initialize_by的以下内容:

关于ruby-on-rails - 使用Rails find_or_initialize_by_email,如何确定记录是否被发现或初始化?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18164287/

10-10 10:20