class DbAccessor::Deleter
Public Class Methods
delete(param)
click to toggle source
# File lib/dbAccessor/deleter/deleter.rb, line 20 def self.delete(param) parameter = JSON.parse(param,symbolize_names: true) model = get_model_name(parameter) model.delete_all end
delete_all(given_object)
click to toggle source
# File lib/dbAccessor/deleter/deleter.rb, line 8 def self.delete_all(given_object) waited_keys = [:model_name,:condition] if validate(given_object,waited_keys) && valid_condition?(given_object) model = get_model_name(given_object) condition = given_object[:condition] condition == {} ? model.update_all("deleted = true") : model.where(condition).update_all("deleted = true") return_response(200,"success") else return_response(400,"Not deleted") end end
valid_condition?(param)
click to toggle source
# File lib/dbAccessor/deleter/deleter.rb, line 30 def self.valid_condition?(param) condition = param[:condition] model_name = param[:model_name] if condition.is_a?(Hash) if !(condition.empty?) keys = condition.keys values = condition.values if !(valid_object_columns?(model_name,condition)) || validate_argument(condition) || !(valid_attributes_values?(condition)) return false end else return true end else return false end return true end
validate(param,waited_keys)
click to toggle source
# File lib/dbAccessor/deleter/deleter.rb, line 26 def self.validate(param,waited_keys) param.is_a?(Hash) && valid_keys?(param,waited_keys) && !validate_argument(param) && is_model?(param[:model_name]) end