5

非常に大きなプロジェクトで、深いモデルの入れ子の問題に遭遇しました。たとえば、次のようなモデルが存在します。

class Communication::Conversation::ForProposal < Communication::Conversation::Base
  ...
end

さらに、table_name、class_name、foreign_keys などを指定する必要があるたびに。

どのような代替案を知っていますか? また、実際にどのようにモデルに名前を付ける必要があると考えていますか?

4

2 に答える 2

0

Rails の最近のバージョンでは、モデルを app/models の下のディレクトリに配置することで、モデルに名前を付けることができます。これらのモデルについては、app/models/communication/conversation を試すことができます。

于 2013-02-16T00:52:31.650 に答える
0

ミックスインの使用を検討する必要があります。機能ごとにコードを整理するのに役立ち、よりクリーンなコードにつながります。以下のページが分かりやすく説明されています。

http://juixe.com/techknow/index.php/2006/06/15/mixins-in-ruby/

私は GitHub で Rails のソース コードをいくつか見てきましたが、非常にクリーンです。彼らはミックスインを多用しています。

https://github.com/rails/rails/tree/master/activemodel/lib

于 2012-05-01T17:35:59.820 に答える