Class: ChinaRegionFu::FetchOptionsController

Inherits:
ActionController::Metal
  • Object
show all
Defined in:
app/controllers/china_region_fu/fetch_options_controller.rb

Instance Method Summary collapse

Instance Method Details

#indexObject



14
15
16
17
18
19
20
21
22
23
24
# File 'app/controllers/china_region_fu/fetch_options_controller.rb', line 14

def index
  validate_params!
  regions = sub_klass.order(name: :asc)
  regions = regions.where(where_value) if where_value
  regions = regions.reorder(level: :asc) if has_level_column?
  regions = regions.select(region_fields)
  self.response_body = { data: regions.as_json(only: region_fields, methods: region_methods) }.to_json
rescue => e
  self.response_body = { error: e.message }.to_json
  self.status = 500
end