私はしばらくの間これを探していましたが、回答が見つからないように見えましたが、Railsでもっと経験があればかなり簡単に修正できるはずです。製品モデルに複数のdefault_scope条件を追加しようとしています。次のように私の製品モデルファイルは次のとおりです。複数の条件をRailsスコープに追加するにはどうすればよいですか?
class Product < ApplicationRecord
has_many :order_items
default_scope { where(active: true) }
validates :name, presence: true, length: { maximum: 300 }
PRICE_REGEXP = /\A\d{1,4}(\.\d{0,2})?\z/
validates :price, presence: true,
numericality: true,
format: { with: PRICE_REGEXP }
validates :description, presence: true, length: { maximum: 1000 },
allow_nil: true
end
私は、製品のインデックスページ上の新製品は、最新の最初の形式であるようにも
default_scope -> { order(created_at: desc) }
を追加したいと思います。私は、私のような何かを、いつでも、構文エラーメッセージが表示されます。
default_scope -> { order(created_at: desc) }, { where(active: true) }
または
default_scope -> { order(created_at: desc), where(active: true) }
または
default_scope -> { order(created_at: desc) where(active: true) }
私は、これはおそらく、私はありませんだけで、構文のものであることを知っています理解。もし誰かが私にこれを修正する方法のアドバイスを与えることができれば大いに感謝します!ありがとう!
なぜそれが機能するかを説明すると、これがより良い回答になります。 – max
あなたは私にそれをさせてください –
私は、考えを更新しましたか? –