Revision 9a3248b3
Added by Dominic Cleal over 10 years ago
config/initializers/rabl_init.rb | ||
---|---|---|
class Engine
|
||
|
||
def api_version
|
||
response.headers["Foreman_api_version"]
|
||
respond_to?(:response) ? response.headers["Foreman_api_version"] : '1'
|
||
end
|
||
|
||
def default_options
|
||
... | ... | |
# 2) custom - pass ?params[:root_name]=custom_name in URL
|
||
def data_name(data_token)
|
||
# custom object root
|
||
return params['root_name'] if params['root_name'].present? && !['false', false].include?(params['root_name'])
|
||
return params['root_name'] if respond_to?(:params) && params['root_name'].present? && !['false', false].include?(params['root_name'])
|
||
# no object root for v2
|
||
return nil if api_version.to_i > 1 || ['false', false].include?(params['root_name'])
|
||
return nil if !respond_to?(:params) || api_version.to_i > 1 || ['false', false].include?(params['root_name'])
|
||
# otherwise return super since v1 has object root (config.include_child_root = true)
|
||
super
|
||
end
|
Also available in: Unified diff
fixes #4005 - ensure standalone Rabl.render works outside of a controller
(cherry picked from commit 858708c466398ac5f42bb1bb0fd6c1e531e31385)