Sha256: abbef3e7941ecb83124bc6ec15a96eb7b549dd2dbfdd8c0e6e347a3e55911801

Contents?: true

Size: 1.18 KB

Versions: 1

Compression:

Stored size: 1.18 KB

Contents

class <%= friendship_class_name %>

  def self.follow!(username, followed_username)
    <%=redis_constant_name%>.sadd("<%=friendship_singular_name%>:#{username}:followings", followed_username)
    <%=redis_constant_name%>.sadd("<%=friendship_singular_name%>:#{followed_username}:followings", username)
  end
  
  def self.unfollow!(username, followed_username)
    <%=redis_constant_name%>.srem("<%=friendship_singular_name%>:#{username}:followings", followed_username)
    <%=redis_constant_name%>.srem("<%=friendship_singular_name%>:#{followed_username}:followings", username)
  end

  def self.follows?(username, followed_username)
    <%=redis_constant_name%>.sismember("<%=friendship_singular_name%>:#{username}:followings", followed_username)
  end

  def self.followed_by?(user, following_user)
    <%=redis_constant_name%>.sismember("<%=friendship_singular_name%>:#{username}:followers", following_username)    
  end

  def self.followings_for(username)
    <%= redis_constant_name %>.smembers("<%= friendship_singular_name %>:#{username}:followings")
  end

  def self.followers_for(username)
    <%= redis_constant_name %>.smembers("<%= friendship_singular_name %>:#{username}:followers")
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
redis-friendships-0.2 lib/generators/redis_friendships/templates/friendship.rb