Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 活动管理员:自定义复选框输入_Ruby On Rails_Activeadmin - Fatal编程技术网

Ruby on rails 活动管理员:自定义复选框输入

Ruby on rails 活动管理员:自定义复选框输入,ruby-on-rails,activeadmin,Ruby On Rails,Activeadmin,我需要显示一个动态的值列表,以在活动的管理员编辑屏幕上显示为复选框,该列表来自代码(而不是数据库)。我可以很容易地做到这一点,但我不知道如何将其中一些显示为正在检查 下面是一个我正在尝试做的简化示例: names = %w(Sam Darcy Ernie) pairs = Hash[names.zip(names)] f.input :buddies, as: :check_boxes, collection: pairs, checked: %w(Sam) 我希望的是显示3个复选框并选中“S

我需要显示一个动态的值列表,以在活动的管理员编辑屏幕上显示为复选框,该列表来自代码(而不是数据库)。我可以很容易地做到这一点,但我不知道如何将其中一些显示为正在检查

下面是一个我正在尝试做的简化示例:

names = %w(Sam Darcy Ernie)
pairs = Hash[names.zip(names)]
f.input :buddies, as: :check_boxes, collection: pairs, checked: %w(Sam)

我希望的是显示3个复选框并选中“Sam”复选框。但是没有一个被检查。如何控制选中的复选框?

我最终得到了以下功能:

people = [
  ['Sam', 0, checked: true],
  ['Darcy', 0],
  ['Ernie', 0],
]
f.input :buddies, as: :check_boxes, collection: people
前2个之外的数组项似乎用于设置属性。因此,在我的例子中,设置了“checked”属性,导致元素属性为
checked=“checked”


我仍然有兴趣知道是否有更好的方法来处理这个问题。

你可以很容易地用javascript设置Sam检查,但要知道Sam是否在随后的编辑屏幕上被故意检查是很困难的,这真的需要作为:has__许多关系来管理。@MikeK。谢谢,我希望AA的复选框支持在页面呈现上设置“checked”属性。正如您所提到的,has_many是理想的,但是当我这样做时,我只能迭代并显示已经保存的内容,而不能显示尚未关联为好友的名称。