class RippedParams::ParamsBuilder
Public Class Methods
new(params, name)
click to toggle source
# File lib/ripped_params/params_builder.rb, line 8 def initialize(params, name) @params = params @name = name end
Public Instance Methods
build()
click to toggle source
# File lib/ripped_params/params_builder.rb, line 13 def build @params.require(params_data[:require]).permit(params_data[:permit]) end
params_data()
click to toggle source
# File lib/ripped_params/params_builder.rb, line 17 def params_data @params_data ||= begin raise NoYAMLFileFoundError, "Could not find #{params_yaml_file_name} in #{yaml_files_directory} directory" if !params_yaml_file_path YAML.load_file(params_yaml_file_path) end end
Private Instance Methods
params_yaml_file_name()
click to toggle source
# File lib/ripped_params/params_builder.rb, line 36 def params_yaml_file_name "#{@name}.yml" end
params_yaml_file_path()
click to toggle source
# File lib/ripped_params/params_builder.rb, line 26 def params_yaml_file_path @params_yaml_file_path ||= Find.find(yaml_files_directory).find do |file_path| Pathname.new(file_path).basename.to_path == params_yaml_file_name end end
yaml_files_directory()
click to toggle source
# File lib/ripped_params/params_builder.rb, line 32 def yaml_files_directory "#{Rails.root}/lib/ripped_params" end