モデルを動的に作成するために、次の Rails 3 モデルを使用しています。
# encoding: UTF-8
require_dependency 'read_only'
require_dependency 'readings_methods'
class Reading < ActiveRecord::Base
self.abstract_class = true
include ReadOnly
include ReadingsMethods
@@mutex = Mutex.new
@@children = {}
def self.with_table(t)
@@mutex.synchronize do
child = @@children[t]
if child.nil?
child = Class.new(self) do
self.table_name = t
end
@@children[t] = child
end
child
end
end
end
ただし、デバッグすると、@@children
ページが読み込まれるたびにリセットされるため、すべてのページの読み込みが非常に遅くなります。これを防ぐにはどうすればよいですか?そして、それを引き起こしているのは何ですか?私が子供たちをメモしない限り、Rails は無限ループに入ります。そのため、新しいモデルなどを作成するたびに、少なくともいくつかのクラスがリロードされると思います。この動作を防ぐにはどうすればよいですか?