0

リファクタリングしようとしている Rails プロジェクトを継承しました。アプリは ActiveRecord を非常に軽く使用します。ほとんどの呼び出しは REST エンドポイントに対するものです。現在、これらの呼び出しを行うクラスは lib ディレクトリにあります。lib ディレクトリに関するいくつかの投稿を読んでいますが、元の開発者がモデル ディレクトリを使用しなかった理由 (何らかの理由があるはずです) と、これらのクラスを移動することの長所/短所は何ですか?モデル ディレクトリ。

これらのクラスはアプリケーションのコアであるため、models ディレクトリにある必要があるように「感じます」。

4

2 に答える 2

1

クラスがモデル関連 (ActiveRecord) ではない場合は、モデルよりも具体的な場所に配置することを検討する必要がありますが、モデルに配置する場合は、それらを囲まれたフォルダーに配置します。

app -> models -> endpoints config -> application.rb 内に、このコード行を入れてロードします

config.autoload_paths += %W(#{Rails.root}/app/models/ar)

または、別のディレクトリアプリに配置することもできます->エンドポイント

これは、REST エンドポイントが分離されるためです。アプリケーションにさらに多くのものを構築する予定がある場合、ビジネスロジックはより「クリーン」でモジュール化され、混乱が少なくなります。

于 2012-08-31T16:38:34.563 に答える
1

それが私がやっていることです。データベースの操作を担当するすべてのクラスをモデルフォルダーに入れます。データベースに実際には依存せず、さまざまなプロジェクトで使用できるライブラリまたはクラスの場合は、lib フォルダーに配置できます。

于 2012-08-30T11:01:56.277 に答える