songtianlun
e5743a5e3f
- Integrate 'friendly_id' gem for sluggable functionality in City model - Create ActiveAdmin resources for managing cities and weather arts - Implement controller logic for cities - Add database migrations for cities and weather arts creation - Seed database with sample data for testing - Create initial test cases for controllers and models This commit enhances the application's URL handling by allowing friendly URLs for cities and weather arts. The addition of ActiveAdmin resources facilitates easier management through a web interface.
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, :latitude, :longitude, :active, :priority, :timezone, :region, :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 :slug
|
|
column :latitude
|
|
column :longitude
|
|
column :active
|
|
column :created_at
|
|
actions
|
|
end
|
|
|
|
filter :name
|
|
filter :active
|
|
|
|
form do |f|
|
|
f.inputs do
|
|
f.input :active
|
|
f.input :name
|
|
f.input :country, as: :String
|
|
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
|