Rails default_scope命令未应用于ActiveAdmin。这是模型default_scope { order(date_time: :desc) }
的范围。这适用于控制台,但不适用于ActiveAdmin。
应用/管理/ reservations.rb
index do
selectable_column
column :name
column :number_of_guests
column 'Date', :date_time, sortable: :date_time do |reservation|
reservation.date_time.strftime('%B %-d, %Y %I:%M %P')
end
column :status do |reservation|
case reservation.status
when 'Pending'
status_tag reservation.status, class: 'warning'
when 'Confirmed'
status_tag reservation.status, class: 'ok'
when 'Closed'
status_tag reservation.status
end
end
column :created_at do |reservation|
reservation.created_at.strftime('%B %-d, %Y %I:%M %P')
end
column :updated_at do |reservation|
reservation.updated_at.strftime('%B %-d, %Y %I:%M %P')
end
actions
end
访问索引时日志
Started GET "/admin/reservations" for 127.0.0.1 at 2018-03-30 05:56:19 +0800
(0.7ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
Processing by Admin::ReservationsController#index as HTML
AdminUser Load (1.0ms) SELECT "admin_users".* FROM "admin_users" WHERE "admin_users"."id" = $1 ORDER BY "admin_users"."id" ASC LIMIT $2 [["id", 1], ["LIMIT", 1]]
Rendering /home/gilbertlcsndle/.rbenv/versions/2.5.0/lib/ruby/gems/2.5.0/gems/activeadmin-1.2.1/app/views/active_admin/resource/index.html.arb
(1.5ms) SELECT COUNT(*) FROM (SELECT 1 AS one FROM "reservations" LIMIT $1 OFFSET $2) subquery_for_count [["LIMIT", 30], ["OFFSET", 0]]
CACHE (0.1ms) SELECT COUNT(*) FROM (SELECT 1 AS one FROM "reservations" LIMIT $1 OFFSET $2) subquery_for_count [["LIMIT", 30], ["OFFSET", 0]]
(0.4ms) SELECT COUNT(*) FROM "reservations"
CACHE (0.0ms) SELECT COUNT(*) FROM (SELECT 1 AS one FROM "reservations" LIMIT $1 OFFSET $2) subquery_for_count [["LIMIT", 30], ["OFFSET", 0]]
Reservation Load (2.7ms) SELECT "reservations".* FROM "reservations" ORDER BY "reservations"."id" desc LIMIT $1 OFFSET $2 [["LIMIT", 30], ["OFFSET", 0]]
(0.5ms) SELECT DISTINCT "reservations"."number_of_guests" FROM "reservations" ORDER BY number_of_guests asc
(0.5ms) SELECT DISTINCT "reservations"."status" FROM "reservations" ORDER BY status asc
Rendered /home/gilbertlcsndle/.rbenv/versions/2.5.0/lib/ruby/gems/2.5.0/gems/activeadmin-1.2.1/app/views/active_admin/resource/index.html.arb (943.2ms)
Completed 200 OK in 1024ms (Views: 952.3ms | ActiveRecord: 18.9ms)