title: Is !object.nil? == object.present? in Rails?
body: <p>Is it safe to assume that <code>!object.nil? == object.present?</code> in Rails, or are there gotchas? Here's a scenario:</p>
  
  <pre><code>  def signed_in?
      !current_user.nil? # Would current_user.present? mean the same thing here?
    end
  
    def sign_in(user)
      cookies[:token] = user.token
      self.current_user = user
    end
  
    def current_user
      @current_user ||= User.find_by(token: cookies[:token]) if cookies[:token]
    end
  </code></pre>