songtianlun
ebaf7a3f34
- Implement Country and Region models - Establish relationships between City, Country, and Region - Update ActiveAdmin setup for managing countries and regions - Add localization support for cities and countries in multiple languages - Create necessary migrations to support the new schema This update allows for better categorization of cities under their respective countries and regions, enhancing geographical structure and support for multilingual features.
55 lines
1.3 KiB
Ruby
55 lines
1.3 KiB
Ruby
ActiveAdmin.register City do
|
|
controller do
|
|
def find_resource
|
|
scoped_collection.friendly.find(params[:id])
|
|
end
|
|
end
|
|
|
|
# See permitted parameters documentation:
|
|
# https://github.com/activeadmin/activeadmin/blob/master/docs/2-resource-customization.md#setting-up-strong-parameters
|
|
#
|
|
# Uncomment all parameters which should be permitted for assignment
|
|
#
|
|
permit_params :name, :country_id, :latitude, :longitude, :active, :priority, :timezone, :last_weather_fetch, :last_image_generation, :slug
|
|
#
|
|
# or
|
|
#
|
|
# permit_params do
|
|
# permitted = [:name, :country, :latitude, :longitude, :active, :priority, :timezone, :region, :last_weather_fetch, :last_image_generation, :slug]
|
|
# permitted << :other if params[:action] == 'create' && current_user.admin?
|
|
# permitted
|
|
# end
|
|
|
|
index do
|
|
selectable_column
|
|
id_column
|
|
column :name
|
|
column :country
|
|
column :region do |city|
|
|
city.region
|
|
end
|
|
column :latitude
|
|
column :longitude
|
|
column :active
|
|
actions
|
|
end
|
|
|
|
filter :name
|
|
filter :active
|
|
|
|
form do |f|
|
|
f.inputs do
|
|
f.input :active
|
|
f.input :name
|
|
f.input :latitude
|
|
f.input :longitude
|
|
f.input :priority
|
|
f.input :timezone
|
|
f.input :region
|
|
f.input :last_weather_fetch
|
|
f.input :last_image_generation
|
|
end
|
|
f.actions
|
|
end
|
|
end
|