したがって、私はインデックスアクションで表示されているデータをスコープでフィルタリングしようとしています。ビューでのフィルタフォームの作成
私はそれは、レールコンソールに完全に正常に動作しprofile.rb
scope :fees_to, -> (fees_to) { where("fees_to <= ?", "#{fees_to}") }
になるようにそれを定義している、私は例えばProfile.fees_to(50)
を行うことができますし、それが50
私が知りたいことは、インデックスビューでこの入力フィルタメソッドを作成する方法です。私はさまざまな方法で私のインデックスビューの情報を収集しようとした
def index
@profiles = Profile.where(nil)
@profiles = @profiles.fees_to(params[:fees_to]) if params[:fees_to].present?
end
、すべては無駄を知るために、次のよう
はindexアクション用profiles_controller.rb
では、コードがあります。
何か助けや助言をいただければ幸いです。ありがとう!
params [:fees_to]が '@profiles = @ profiles.fees_to(params [:fee_to]) 'の代わりに' @profiles = Profile.fees_to(params [:fees_to] ] .present? ' – Pavan
@Pavanは' @ profile'の代わりに 'Profile.'を使うことの違いを親切に説明できますか?さらに、私は自分のフォームをコレクションのためにレンダリングする方法についてはあまり明確ではありません。私は現在、 '<%form_for @profiles do | f | %> 'しかし、それはエラーをレンダリングします。 – angkiki
スコープはクラスメソッドです。それらは 'ClassName.ScopeName'のようなクラスで呼び出されるべきです。 – Pavan