1
Rails.application.config.trackable_models
はフル配列を返しますが、defined?(Rails.application.config.trackable_models)
はnilを返します。同じようにローカル変数を設定するRails.application.config変数が定義されているかどうかを確認するにはどうすればよいですか?
Rails.application.config.trackable_models # => ["NewsItem", "ContentPage", "Event"]
defined?(Rails.application.config.trackable_models): # => nil
は大丈夫です:
foo = ["x"]
defined?(foo) # => local-variable
ない場合は設定変数の存在をチェックする適切な方法は何である「定義されましたか?」?
ありがとう@steel ... 'respond_to?'は完璧に動作します。残りはtrackable_modelsが定義されていると仮定すると便利です。そうでなければ 'Rails.applications.config.trackable_models'を呼び出すと"未定義のメソッド 'trackable_models'が返されます –