これをモデルに追加した後、奇妙なバグが発生しましたAlternative:
default_scope order(:number)
最初のページ更新では、すべて正常に動作します。その後の更新で、私は得る
NoMethodError in Pages#show
undefined method `written?' for #<Alternative:0x10455c558>
Alternative確実にwritten?方法があります。Passengerを実行しているので、
touch tmp/restart.txt
ページは再び機能します。初めてのリフレッシュに。しかし、その後の更新でエラー メッセージが再び表示されます。を削除default_scopeすると問題が解決します (ただし、別のサーバーの再起動後のみ)。
編集:このバグは、 を介して WEBrick で実行している場合にも存在するrails serverため、Passenger には接続されません。
編集: written?のインスタンス メソッドAlternativeです。このバグはhas_many、次のようにを介して取得したメソッドにアクセスしようとしたときにも発生します。
has_many :restrictions
alternative.restrictions.empty? # => NoMethodError
default_scopeRails 3 で問題を経験している人はいますか? または解決策がありますか?ありがとう!