18、社交网络服务:克隆 Facebook 实战

社交网络服务:克隆 Facebook 实战

1. 数据模型概述

在构建类似 Facebook 的社交网络服务 Colony 时,数据模型是基础。以下是 Colony 中使用的主要数据模型:

1.1 Confirm 类

class Confirm
  include DataMapper::Resource
  property :id, Serial
  belongs_to :confirmed_user, :class_name => 'User', :child_key => [:user_id]
  belongs_to :confirmed_event, :class_name => 'Event', :child_key => [:event_id]  
end

这个类用于关联用户和他们确认参加的活动。在 User 类中,有一个方便的方法 friend_events 来查找用户朋友正在参加的活动:

def friend_events
  events = []
  friends.each do |friend|
    events += friend.confirmed_events
  end
  return events.sort {|x,y| y.time <=> x.time}    
end

该方法会检索用户朋友确认参加的活动,并按时间升序排序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值