Active Admin中的自定义表单

jri*_*iff 4 ruby-on-rails activeadmin

我在Active Admin 0.5中创建自定义表单.我已经注册了一个页面并通过DSL创建了一个表单:

ActiveAdmin.register_page 'Planning', :namespace => :pos_admin do

  content :title => proc{ I18n.t("active_admin.dashboard") } do

    form do |f|
      f.input :type => :text
      f.input :type => :submit
    end

  end
end
Run Code Online (Sandbox Code Playgroud)

问题是,在提交表单时,我得到一个空的Params哈希.表单标记不包含真实性标记.

我究竟做错了什么?

Joh*_*nis 6

一个旧帖子,但对于任何绊倒这个问题的人来说,答案是补充

f.input :name => 'authenticity_token', :type => :hidden, :value => form_authenticity_token.to_s
Run Code Online (Sandbox Code Playgroud)

到形式.这会将身份验证令牌传递回ActiveAdmin,以便确认没有发生伪造.您的会话被终止,您被带回登录屏幕,因为ActiveAdmin认为您正在尝试伪造提交.

您的表单现在应该是这样的

form do |f|
  f.input :name => 'authenticity_token', :type => :hidden, :value => form_authenticity_token.to_s
  f.input :type => :text
  f.input :type => :submit
end
Run Code Online (Sandbox Code Playgroud)