Active Admin 是一个基于 Ruby on Rails 的开源框架,用于快速构建管理界面。它提供了一套易于使用的界面,可以帮助开发人员快速创建和管理后台管理系统。
在 Active Admin 中,如果想在索引页面上呈现表单,即在未创建对象时显示表单,可以通过自定义资源的 index
动作来实现。下面是实现的步骤:
index
动作。在资源文件中添加以下代码:ActiveAdmin.register YourModel do
# ...
action_item :new, only: :index do
link_to 'New Your Model', new_admin_your_model_path
end
collection_action :new, method: :get do
@your_model = YourModel.new
end
action_item :create, only: :index do
link_to 'Create Your Model', create_admin_your_model_path, method: :post
end
collection_action :create, method: :post do
@your_model = YourModel.new(your_model_params)
if @your_model.save
redirect_to admin_your_models_path, notice: 'Your Model created successfully.'
else
render :new
end
end
# ...
controller do
def your_model_params
params.require(:your_model).permit(:attribute1, :attribute2, ...)
end
end
end
app/views/admin/your_models/new.html.erb
文件中添加以下代码:<%= active_admin_form_for [:admin, @your_model] do |f| %>
<%= f.inputs 'Your Model Details' do %>
<%= f.input :attribute1 %>
<%= f.input :attribute2 %>
<!-- 添加其他属性字段 -->
<% end %>
<%= f.actions %>
<% end %>
通过以上步骤,你可以在 Active Admin 的索引页面上呈现表单,并在创建对象时填写相关属性。当点击 "New Your Model" 链接时,会跳转到自定义的 new
动作,显示表单。填写完表单后,点击 "Create Your Model" 链接,会跳转到自定义的 create
动作,创建对象并重定向回索引页面。
推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云数据库(TencentDB)。你可以通过以下链接了解更多信息:
领取专属 10元无门槛券
手把手带您无忧上云