2

Railsでは、グローバル(アプリケーションのどこでもアクセス可能)なモデルを作成できます。しかし、私はグローバルないくつかの構造体を作成したいと思いますが、どのデータベーステーブルにも対応していないので(モデル化できないため)、インスタンス化されません(クラスの代わりにモジュールが必要です) 。Railsでグローバルにアクセス可能なモジュールを作成するにはどうしたらいいですか?

私は値を変更するたびにサーバーを再起動する必要があるため(サーバーを再起動せずにモデルのコードを変更できるため)、動作するinitializersディレクトリを使用しようとしましたが、迷惑します。このようにグローバルにアクセス可能なモジュールを作成する最良の方法は何ですか?

答えて

5

ジャストlibサブディレクトリにそれを入れて、あなたのconfig/application.rbにそれを追加します。

config.autoload_paths += ["#{config.root}/lib"] 
1

(適切である)libディレクトリにモジュールを追加することに加えて、あなたは、モデルのディレクトリ内のクラスをも置くことができます。 ActiveRecordベースである必要はありません。

関連する問題