Rails 允许管理员添加标签

Rails allowing admin to add tags

我正在尝试允许管理员添加标签。我在活动管理员中创建了一个新的标签页,但我收到错误 undefined method 'actions'.

user.rb

ActiveAdmin.register User do
  permit_params :email, :password, :password_confirmation,  {:tag_list => []}

  index do
    selectable_column
    id_column
    column :email
    column :current_sign_in_at
    column :sign_in_count
    column :created_at
    actions
  end
end

ActiveAdmin.register_page "Tags" do
  content do
     form do |f|
        f.input :tag_list, label: "Medium/Process"
        f.actions
     end
   end    
 end

您应该使用 register 方法和 Tag 资源

ActiveAdmin.register Tag do
...
end

并且用户模型应该has_many :tags。您可以在那里构建自定义逻辑。

或者您可以通过嵌套表单在用户资源中填充标签:

ActiveAdmin.register User do
  form do |f|
   f.inputs :tags do
      f.has_many :tags, heading: 'Themes', allow_destroy: true do |ft|
        ft.input :title
      end
    end
  end
end