rails activeadmin(多)嵌套表单

时间:2012-01-31 04:08:28

标签: ruby-on-rails activeadmin

我正在尝试使用主动管理员。我有这个型号:

class Client < ActiveRecord::Base
  has_many :direcctions

  validates :empresa, :presence => true
  validates :fono, :presence => true
  validates :giro, :presence => true
  accepts_nested_attributes_for :direccionts
end

class Direction < ActiveRecord::Base
  belongs_to :client
  has_one :city
  accepts_nested_attributes_for :city
end

class City < ActiveRecord::Base
  belongs_to :direction
end

在我的Activeadmin.register块中,我有:

ActiveAdmin.register Cliente do
  form do |f|
    f.inputs do
      f.input :empresa
      f.input :fono
      f.input :giro
    end

    f.inputs "Direcciones" do
      f.has_many :directions do |j|
        j.input :direction
        #  j.inputs "Ciudad" do
        #      j.has_one :ciudads do |r|
        #          r.input :city
        #      end
        #  end
      end
    end

    f.buttons
  end
end

有了这个我不能向一个客户添加多个方向,但我无法显示将城市添加到方向的输入...我该怎么办?这不起作用..当我尝试创建一个客户端时,我也有这个错误:

unknown attribute: client_id

提前致谢...

1 个答案:

答案 0 :(得分:-1)

ActiveAdmin使用Justin French的Formtastic gem,因此您可以直接在表单中使用该DSL,例如:

f.inputs "Direcciones" do
  f.semantic_fields_for :directions do |j|
    j.input :direction
    j.inputs "Ciudad" do
      j.semantic_fields_for :ciudads do |r|
        r.input :city
      end
    end
  end
end