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
없는 경우 설정 변수의 존재를 확인하는 적절한 방법은 무엇입니까 "정의는?"?
tm = Rails.applications.config.trackable_models
tm.nil?
tm.presence || 'default value'
tm.present?
tm.blank?
:
Thanks_steel ...'respond_to?'는 완벽하게 작동합니다. 나머지는 trackable_models가 정의되었다고 가정 할 때 유용합니다. 그렇지 않으면'Rails.applications.config.trackable_models'를 호출하면 "undefined method 'trackable_models'"가됩니다 –