ActiveAdmin编辑输入缺少的属性

时间:2016-04-04 13:28:22

标签: ruby-on-rails activeadmin

由于某些原因,我的某个模型(chart.rb)的“编辑”页面缺少其属性。

简单地添加

form do |f|
    f.semantic_errors
    f.inputs
    f.actions
end

到chart.rb文件将错过我的名为type的属性。

如果我为类型添加特殊字段

form do |f|
    f.semantic_errors
    f.inputs
    inputs 'test' do
      input :type
    end
    f.actions
end

它会在下面的另一部分以漂亮的格式正确呈现类型输入。

有谁知道为什么f.inputs可能缺少我的某个模型属性?

快速编辑: 我使用以下代码进行了快速修补:

form do |f|
    f.semantic_errors
    f.inputs do
      f.input :project
      f.input :name
      f.input :type
      f.input :y_axis
      f.input :y_max
      f.input :y_min
      f.input :x_axis
      f.input :x_max
      f.input :x_min 
    end
    f.actions
  end

这使表格很好。但是在尝试保存时,我在Rails中遇到以下错误:

  

单表继承机制无法找到子类:   '图形'。引发此错误是因为保留了“type”列   用于在继承的情况下存储类。请重命名   如果您不打算将其用于存储继承,请使用该列   类或覆盖Chart.inheritance_column以使用另一列   那个信息。

看起来列名type是保留的吗?这是ActiveAdmin预订吗? HM .....

1 个答案:

答案 0 :(得分:3)

type是rails的保留字。

在这里,您可以看到所有reserved word

我建议您更改type或其他字词的kind列。

您需要将f.添加到inputs,如下所示:

form do |f|
  f.semantic_errors
  f.inputs
  f.inputs 'test' do
    input :type
  end
  f.actions
end