モデルモジュールの配置、名前付け、ロードの規約はどれですか?

私は現在、次のことをしています:

app/models/
  user.rb
  finders/user_finders.rb
  attributes/user_attributes.rb
  validations/user_validations.rb

そして、多くの “ビッグ”モデルでも同様です。

そして、それらを読み込むために、私は次のことを行います:

In app/models/user.rb

load 'attributes/user_attributes.rb'
load 'finders/user_finders.rb'
load 'validations/user_validations.rb'

user_ {stuff} .rbはUserクラスを再オープンするだけです。

しかし、問題は、私のuser_
{stuff}が、プロダクションやテスト中に(開発ではなく)2回読み込まれ、エイリアシングでいくつかのものが壊れてしまうことです。

これを実現するRailsの方法はどれですか?

ベストアンサー

この状況を処理するために relevant_with を使用します。ここ
– しかし、このようなことには問題があります。記事末尾のコメントとこの記事間違いなく、アプリケーションを設計してモデルのサイズが大きくなりすぎないようにすることが最善のソリューションだと思いますが、明らかにこれが常にうまくいくとは限りません。

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です