1

私がやろうとしていることは次のとおりです。質問と回答の両方が特定の投稿に属している、多くの質問と回答を含む投稿があるとします。私が理解しようとしているのは、質問と回答が5つ未満の投稿をまとめて取得する方法です。

何かのようなもの:

@posts = Post.where(post.questions + post.answers < 5)

助言がありますか?

4

2 に答える 2

2

投稿の質問と回答の合計を保持する新しいフィールドをテーブルに作成できます。これは、次のようなコールバックを使用して実行できます。

  class Post < ActiveRecord::Base
    ...

    # After you've created the sum field (migration etc.)
    before_save do |post|
      post.sum = post.questions.count + post.answers.count
    end
  end

次に、コントローラーで次のことができます@posts = Post.where('sum < 5')

于 2012-05-31T10:35:55.683 に答える
0

Squeel をチェックしてください: http://erniemiller.org/projects/squeel/

クエリで、他の多くのものの中で、関連付けをトラバースできるようにします。

于 2012-05-31T15:27:01.217 に答える