活动管理 habtm 新按钮文本更改

Vij*_* mv 1 ruby ruby-on-rails has-many has-and-belongs-to-many activeadmin

用户.rb

class User < ActiveRecord::Base
  has_and_belongs_to_many :user_groups
end
Run Code Online (Sandbox Code Playgroud)

同样,user_group.rb

class UserGroup < ActiveRecord::Base
  has_and_belongs_to_many :users
end
Run Code Online (Sandbox Code Playgroud)

现在用户组的活动管理页面如下所示:

ActiveAdmin.register UserGroup, as: 'UserGroup' do
  form do |f|
    f.inputs do
      f.has_many :usergroup_users, as: 'member user' do |user|
        user.input :user_id
      end 
    end 
  end 
end
Run Code Online (Sandbox Code Playgroud)

现在,这将创建用户组表单,其中包含用于将用户添加到新组的字段。将新用户添加到组的按钮将为Add new User Group User。我想将此按钮标签修改为其他内容。如何实施?

使用以下方法解决了我的部分问题:

f.has_many :usergroup_users, heading: 'Add User to Group', as: 'member user' do |user|
...
end
Run Code Online (Sandbox Code Playgroud)

这会将标题部分更改为所需的文本。但按钮标签仍然是一个问题。

Vij*_* mv 5

f.has_many :usergroup_users, new_record: 'Add member user' do |user|
...
end
Run Code Online (Sandbox Code Playgroud)

new_record属性可用于自定义按钮标签。


the*_*oni 5

通过这种方式,人们可以更改新页面和编辑页面按钮上的文本。


    form do |f|
      f.inputs do
        f.input :email
        f.input :phone
      end
      f.actions do
        if resource.persisted?
          # edit
          f.action :submit, as: :button, label: 'Update Model'
        else
          # new
          f.action :submit, as: :button, label: 'Create Model'
        end
        f.action :cancel, as: :link, label: 'Cancel'
      end
    end

Run Code Online (Sandbox Code Playgroud)