0

我是 ROR 的新手。安装 ActiveAdmin 并使用它注册部门模型

部门数据库表如下:

id parent_id name

部门型号:

class Departments < ActiveRecord::Base
  attr_accessible :name, :parent_id

  belongs_to :parent, :class_name => 'Departments'

  validates :name, :presence => true
end

并在活动管理员中:

ActiveAdmin.register Departments do
  menu :parent => 'Manage'
  index do 
    column :parent_id
    column :name
    default_actions
  end

  form do |f|
    f.inputs "Departments" do
      f.input :parent_id
      f.input :name
    end
    f.buttons
  end
end

在索引页面上,它在父列下显示 id 号我有两个问题

  1. 我如何显示父名称而不是显示父 ID

  2. 添加新部门时,如何显示包含所有部门名称而不是文本字段的父字段的下拉列表。

当我单击视图链接时,它会正确显示父名称而不是父 ID

谢谢

4

2 回答 2

2
ActiveAdmin.register Departments do
  index do
    column :parent
  end
end

或者,如果这不起作用,您可以更明确

ActiveAdmin.register Departments do
  index do
    column :parent do |resource|
      resource.name
    end
  end
end

对于输入菜单

form do |f|
  f.inputs "New" do
    f.input :parent, :as = :select, :collection => Department.all, :member_label => lambda { |i| i.name }
  end
end
于 2012-08-07T04:16:49.193 回答
0

试着把

column :parent
input :parent
于 2012-08-07T02:36:35.213 回答