Skip to content

Commit 0668de9

Browse files
committed
修正 Topic#reply_ids 会拉出所有回复 ID 列表的问题;
1 parent 8238c6e commit 0668de9

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

app/models/topic.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ def destroy
157157
# 所有的回复编号
158158
def reply_ids
159159
Rails.cache.fetch([self, 'reply_ids']) do
160-
replies.only(:id).map(&:id).sort
160+
self.replies.order('id asc').pluck(:id)
161161
end
162162
end
163163

spec/models/topic_spec.rb

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -248,4 +248,13 @@
248248
expect(t.lock_node).to eq true
249249
end
250250
end
251+
252+
describe '.reply_ids' do
253+
let(:t) { create(:topic) }
254+
let!(:replies) { create_list(:reply, 10, topic: t) }
255+
256+
it 'should work' do
257+
expect(t.reply_ids).to eq replies.collect(&:id)
258+
end
259+
end
251260
end

0 commit comments

Comments
 (0)