0

現在、結果セットを希望どおりに並べ替えるクエリがありますが、返されるレコードの数を制限したいと思います。DataMapperの制限を認識していますが、マージされた戻り値ではなく各クエリの戻り値を制限しているため、これは機能しませんでした。これは私の質問です:

 @activities = current_user.followed_users.activities(:order => [:created_at.desc]) + current_user.followed_centers.activities(:order => [:created_at.desc])

これにより、結果セットがマージされ、正しく順序付けられます。ただし、マージされた結果セットの戻りサイズを制限できるかどうか誰かが知っていますか?つまり、limit => 2 ...と言った場合、これはユーザーまたは/およびセンターのいずれかによる2つの最新のアクティビティを取得します。

4

1 に答える 1

0
@activities = (current_user.followed_users.activities(:order => [:created_at.desc]) + current_user.followed_centers.activities(:order => [:created_at.desc])).all(:limit => 5)
于 2012-10-25T18:36:33.150 に答える