mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
DEV: Add convenience method to check info about a site setting
This is only defined in a console environment. For example:
```
[1] pry(main)> SiteSetting.info(:title)
=> {:resolved_value=>"Globally Overridden Title",
:default_value=>"Discourse",
:global_override=>"Globally Overridden Title",
:database_value=>"Test Discourse",
:refresh?=>false,
:client?=>true,
:secret?=>false}
```
This commit is contained in:
@@ -413,6 +413,22 @@ module SiteSettingExtension
|
||||
end
|
||||
end
|
||||
|
||||
if defined?(Rails::Console)
|
||||
# Convenience method for debugging site setting issues
|
||||
# Returns a hash with information about a specific setting
|
||||
def info(name)
|
||||
{
|
||||
resolved_value: get(name),
|
||||
default_value: defaults[name],
|
||||
global_override: GlobalSetting.respond_to?(name) ? GlobalSetting.public_send(name) : nil,
|
||||
database_value: provider.find(name)&.value,
|
||||
refresh?: refresh_settings.include?(name),
|
||||
client?: client_settings.include?(name),
|
||||
secret?: secret_settings.include?(name),
|
||||
}
|
||||
end
|
||||
end
|
||||
|
||||
protected
|
||||
|
||||
def clear_cache!
|
||||
|
||||
Reference in New Issue
Block a user