【问题标题】:Active admin Place a form above the table活动管理员 在表格上方放置一个表格
【发布时间】:2018-10-04 05:34:38
【问题描述】:

我有一个使用活动管理员的应用程序。我试图实现的是,在活动管理表上方显示一个表单。提交表单后,会发出一个请求,该请求将显示在表单下方的表格中。我试过的是,

  • 试图在索引内的面板中呈现表单

  • 尝试有 2 个索引,一个用于表格,另一个用于呈现表单

我在上面两个解决方案中遇到的问题是,当表格中没有记录时,表格也没有显示。当表格有记录时,显示表格

有没有办法即使索引表中没有记录也能显示表单。或者,在表格上方显示表格的其他方式。我也尝试编写自定义索引,但找不到确切的文档

【问题讨论】:

    标签: ruby-on-rails forms panel activeadmin


    【解决方案1】:

    首先,渲染一个你通常做的表单:

    form html: {:multipart => true} do |f|
        f.inputs do
          f.input :name
          f.input :content
          f.input :description
          f.input :price
          f.input :plan
          f.input :image, hint: f.project.image? ? image_tag(project.image.url, height: '100') : content_tag(:span, "Upload JPG/PNG/GIF image")
        end
        f.actions
      end
    

    在模型内部。就我而言,它是 project.rb 的 projects.rb

    如果您想通过部分渲染表单,只需执行以下操作:

     # renders app/views/admin/posts/_some_partial.html.erb
        render 'some_partial', { post: post }
    

    这会将任何表单呈现到您的管理面板中。

    如果要插入索引:

    ActiveAdmin.register Task do
      permit_params :title, :note, :video, :header, :tag, :project_id
    
    
      sortable tree: false, sorting_attribute: :tag
    
      index :as => :sortable do
        label :title
        actions
      end
    
      index do
        selectable_column
        column :header
        column :title
        column :tag
        column :project
    
        actions
      end
    end
    

    【讨论】:

    • 我应该在哪里做代码render 'some_partial', { post: post },这样它就会显示在索引上方
    • 请将您的 active_admin 文件发布到您要呈现表单的位置,否则将很难分辨。
    猜你喜欢
    • 2014-06-06
    • 2017-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-06
    • 1970-01-01
    • 2018-08-03
    • 1970-01-01
    相关资源
    最近更新 更多