mongoid 4.0.2モンゴイドデフォルトスコープはデフォルト値をオーバーライドします。どうして?
私はTest
クラスを持っている:
class Test
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::Paranoia
field :successful, type: Boolean, default: false
default_scope ->{ where(successful: true) }
end
その後、私は:何がこの振る舞いの背後にある理由です:
t=Test.new; t.successful
=> true
だからここに質問はありますか?
P.S.after_initialize
メソッドの助けを借りてsuccessful
をリセットして固定しました。
これはバグのようです。あなたがこれを引き起こしている 'default_scope'であることを確認しましたか? – Drenmi
@Drenmi default_scopeで行を削除すると、すべてが大丈夫です。だから私はそう思います。 –
@muistooshortもちろん、今修正されました。 –