0

多くの を持つCommentモデルがありattachmentsます。私が返したいのは、1 つ以上の添付レコードがあるか、コメントが 250 文字を超えるすべてのコメントです。

完全に純粋なSQLで書かずにこれを行う方法はありますか? Rails メソッドだけで WHERE 句を作成するのに苦労しています。私が望んでいたほど単純ではありません:(

理想的にはこれをスコープにしたいのですが、うまくいくものは何でも構いません

4

3 に答える 3

0

WHERE 句は、次の擬似コードのパターンに従う必要があります。

WHERE Length(Comment_field) > 250
OR EXISTS (Select COMMENT_ID from attachments)
于 2013-05-09T16:12:49.127 に答える
0

irb または rails c (コンソール) にジャンプし、コマンドラインからこれを実行して取得し、プラグインします。

 c     =  YourCommentModel.where('attachments > ?', 1)
len250 =  c = YourCommentModel.where('attachments.length> ?', 250)
最初のものは 1 より大きいコメントを与え、2 番目はコメント > 250 を与えます
于 2013-05-09T16:30:03.800 に答える