【发布时间】:2014-03-25 12:36:50
【问题描述】:
我正在模型中测试一种方法。叫last_photo,我填了数据库的数据,尝试返回第一个元素,结果报错udefined method 'latest'。会是什么呢?我该如何解决?
方法latest这个:
范围:最新,-> { order('created_at DESC') }
def last_photo
@last_photo ||= user_updates.latest.where("photo_front IS NOT NULL and photo_front != ''").first.try(:photo_front)
end
context "instance method" do
let(:user) { create :user }
context "last photo" do
before { create_list(:user_update, 3, user: user) }
let(:user_updates){ UserUpdate.all }
describe "#last_photo" do
subject { user.last_photo }
it { should eq user_updates.latest.first.photo_front }
end
describe "#last_photo_side" do
subject { user.last_photo_side }
it { should eq user_updates.latest.first.photo_side}
end
end
end
谢谢。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-4 rspec2 rspec-rails