ロードに時間がかかり、変更されず、共有されているため、データが1回読み込まれます。これは静的なクラスです:私はインスタンスを使用していません。Rubyでクラス変数をロードするメソッドを呼び出す方法は?
class Foo
@@ data = self.load_data
def self.load_data
.
.
.
end
def self.calculate
.
.
end
end
これは、割り当て後にload_dataが表示されるため、エラーNoMethodError: undefined method 'load_data' for Foo:Class
がスローされます。
f = Foo.new
を使用していないため、初期化は機能しません。私はFoo.calculate
として使用しています。
load_dataを呼び出す前に宣言する必要がありますか?それとも良い方法がありますか?
'Foo.calculate'はcronジョブで実行されるので、' load_data'を呼び出す良いタイミングがありません。この場合、何らかの形で自動ロードするほうが良いです... –
次に、計算メソッドからload_dataを呼び出します。 –