hasマンリーの中で、find_sqlのテクニック
767 ワード
もっと読む
多くの場合、LIlsが提供する対象関係方法:has_マンリー、belongsト、もう使いやすいです。ただし、自分でいくつかのクエリをカスタマイズする必要があります。例えば、ある分類のすべての書籍(サブカテゴリを含む)
この問題はライルスが自然に考えました。docをよく読んでみたら、find_sqlは、ドキュメントで「単一引用符」を使用します。 ''
そこで問題はすらすらと解決した。
多くの場合、LIlsが提供する対象関係方法:has_マンリー、belongsト、もう使いやすいです。ただし、自分でいくつかのクエリをカスタマイズする必要があります。例えば、ある分類のすべての書籍(サブカテゴリを含む)
class BookCategory < ActiveRecord::Base
has_many :books,:foreign_key => "category_id"
has_many :all_books,:class_name=>"Book" , :finder_sql =>"
select * from #{Book.table_name}
where category_id between #{id}.00 and #{id}.99"
そして実行します。エラーが見つかりました。
warning: Object#id will be deprecated; use Object#object_id
ここで、find_のためにsqlの中の文字列の位置環境はクラスです。だから、Class.idを呼んで、私達が欲しいのはBook Categoryの対象方法です。この問題はライルスが自然に考えました。docをよく読んでみたら、find_sqlは、ドキュメントで「単一引用符」を使用します。 ''
そこで問題はすらすらと解決した。