class RequestPresenter < SimpleDelegator
  def can_vote?(u)
    self.user.id != u.id && !self.user.voted_on?(self)
  end

  def liked_by user
    if can_vote?(user)
      super
    else
      false
    end
  end
end

class RequestPresenter < SimpleDelegator
  def can_vote?(u)
    self.user.id != u.id && !self.user.voted_on?(__getobj__)
  end

  def liked_by user
    if can_vote?(user)
      super
    else
      false
    end
  end
end

Use delegated object instead of self when checking vote permissions
Use delegated object instead of self when checking vote permissions
