【问题标题】:Different forms for update and create actions in ActiveAdminActiveAdmin 中用于更新和创建操作的不同表单
【发布时间】:2013-10-18 13:27:08
【问题描述】:

updatecreate 操作在 ActiveAdmin 中是否可以有不同的形式?我怎么能做到这一点?我在文档中寻找了一段时间,但找不到任何东西。

【问题讨论】:

  • 嗯...你能说得更具体点吗? HTML? MySQL?
  • 表单会因显示/隐藏一些字段而不同,还是表单的整个显示会显着不同?可以为 newedit 操作呈现不同的视图,但它不会在 ActiveAdmin DSL 中。

标签: ruby-on-rails ruby forms action activeadmin


【解决方案1】:

您可以使用object.new_record?来检查记录是否为新记录。

例如:

    form do |f|
      if object.new_record? # new 
        f.inputs do
          f.input :name
          f.input :age
        end    
      else                  # update
        f.inputs do
          f.input :name
        end
      end

      f.actions
    end

【讨论】:

    【解决方案2】:

    当然可以

    def new
    end
    
    def edit
    end
    
    def create
    end
    
    def udpate
    end
    

    在您的新模板中,有用于创建的表单,在您的编辑模板中,有用于更新的表单。当用户单击添加新时,将其挂钩到新操作。当用户点击更新时,钩住它进行编辑

    new.html.haml/new.html.erb
    
    <form for create>
    
    edit.html.haml/edit.html.erb
    
    <form for update>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-03
      • 2013-04-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多