8
是否有这样的比较对象的性能增益...比较对象或只是标识
current_user.id == @user.id
与此...
current_user == @user
也有最佳实践的原因做一个不管表现如何?
是否有这样的比较对象的性能增益...比较对象或只是标识
current_user.id == @user.id
与此...
current_user == @user
也有最佳实践的原因做一个不管表现如何?
是的,但几乎没有。 ActiveRecord::Base#==
做到这一点:
def ==(comparison_object)
super ||
comparison_object.instance_of?(self.class) &&
id.present? &&
comparison_object.id == id
end
基本上比较id
秒,但可以确保对象是同一类型,您可能想要自,例如,如果你比较只是id
就是他们可能是一样的,甚至尽管一个是User
,另一个是Product
。
总之,比较模型对象本身是最好的。