用户关注与状态动态功能实现
1. 状态动态的动机与策略
状态动态背后的基本思想很简单,其目的是从数据库中提取当前用户所关注的用户(以及用户自身)发布的微博。为了实现这一功能,我们计划实现一个名为 from_users_followed_by 的方法,使用方式如下:
Micropost.from_users_followed_by(user)
在实现该方法之前,我们可以先为其功能编写测试。状态动态需要满足三个要求:
- 关注用户的微博应包含在动态中。
- 用户自身的微博应包含在动态中。
- 未关注用户的微博不应包含在动态中。
以下是状态动态的最终测试代码:
# spec/models/user_spec.rb
require 'spec_helper'
describe User do
describe "micropost associations" do
before { @user.save }
let!(:older_micropost) do
FactoryGirl.create(:micropost, user: @user, created_at: 1.day.ago)
end
let!(:newer_micropost) do
FactoryGirl.create(:micropost, user: @user, created_at: 1.hour.ago)
end
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



