Method: Configlet#default
- Defined in:
- lib/configlet.rb
#default(args, &block) ⇒ Object
Set one or more default values. Use “friendly” names, not env vars, so a default for the THUNK_SECRET could be set as Configlet.default :secret => "sssssh" (assuming a "thunk" prefix).
If a default value is a lambda, it’ll be resolved the first time the config value is retrieved, and the result of calling the lambda will be the new default value.
If a single string or symbol is provided instead of a hash, the method block form may be used to provide a delayed default. This is just sugar over providing a lambda:
default(:foo) { Rails.env } # is the same as
default :foo => lambda { Rails.env }
62 63 64 65 66 67 68 |
# File 'lib/configlet.rb', line 62 def default args, &block if Hash === args args.each { |k, v| defaults[k.to_s] = v } elsif block_given? defaults[args.to_s] = block end end |