Это очень просто сделать с ActiveAdmin.Допустим, ваш класс настроек - «Настройки»:
ActiveAdmin.register_page "Settings" do
content do
table :class => 'settings' do
thead do
th 'Setting'
th 'Value'
th ''
end
Settings.all.each do |key, val|
tr do
td strong key
td val
td do
link_to "delete", admin_settings_delete_path( :key => key ), :method => :post
end
end
end
tr do
form :action => admin_settings_create_path, :method => :post do
td do
input :name => 'key'
end
td do
input :name => 'val'
end
td do
input :type => 'submit', :value => 'Add'
end
end
end
end
end
page_action :create, :method => :post do
Settings[params[:key]] = params[:val]
redirect_to :back, :notice => "#{params[:key]} added"
end
page_action :delete, :method => :post do
Settings.destroy params[:key]
redirect_to :back, :notice => "#{params[:key]} deleted"
end
end
Конечно, вам нужно добавить немного CSS и, возможно, несколько проверок, но у вас есть страница настроек.это для rails-settings-cached
, а не rails-settings
, но мой быстрый поиск привел сюда, так что я думаю, что это все еще может кому-то помочь.