Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.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 如何自定义集合\u复选框的id_Ruby On Rails_Ruby On Rails 4 - Fatal编程技术网

Ruby on rails 如何自定义集合\u复选框的id

Ruby on rails 如何自定义集合\u复选框的id,ruby-on-rails,ruby-on-rails-4,Ruby On Rails,Ruby On Rails 4,我正在使用rails4和bootstrap_表单 当我写作时 = f.collection_check_boxes :helpability, People.all_helps, :id, :name html就像 <div class="checkbox"> <label for="people_helpability_resume"> <input type="checkbox" value="resume" name="peo

我正在使用rails4和bootstrap_表单

当我写作时

= f.collection_check_boxes :helpability, People.all_helps, :id, :name
html就像

<div class="checkbox">
  <label for="people_helpability_resume">
  <input
    type="checkbox"
    value="resume"
    name="people[helpability][]"
    id="people_helpability_resume" />
    RESUME
  </label>
</div>
<div class="checkbox">
  <label for="people_helpability_interview">
  <input
    type="checkbox"
    value="interview"
    name="people[helpability][]"
    id="people_helpability_interview" />
    INTERVIEW
  </label>
</div>

简历
采访
有没有一种方法可以自定义id,例如
帮助你简历
帮助你面试
,其中“简历”和“面试”在人物中。所有帮助

另外,参数
:id
的作用是什么?如何使用此值方法?

您可以看到定义为:

collection_check_boxes(method, collection, value_method, text_method, options = {}, html_options = {}, &block)
因此,您可以添加选项,并将options参数指定为空哈希,然后添加任何html选项,如本例中的id。所以这应该有效(应该):

您需要打开一个块,打印标签,对应于该块,在标签内部再次打开一个块并打印输入,在那里您可以根据需要编辑html选项:

= form.collection_check_boxes :helpability, People.all_helps, :id, :name do |block| 
  = block.label { block.check_box id: "#{block.object.name}-id" } 
  = block.label { block.object.name }

有关更多信息,您可以检查

是否要更改输入值属性?它对应于作为参数传递的
:name
键,它来自存储的数据。否。所以目前的id是“人员帮助能力简历”和“人员帮助能力面试”。我希望它们是“帮助简历”和“帮助面试”。在这种情况下,添加id作为最后一个参数应该有效。如何?我想要多个不同的id值。抱歉,这仍然不起作用。id的值未更改。这仍然是“人的帮助能力”面试和“人的帮助能力”简历。你解决了这个问题吗?没有。我把评论放在了对话中。我以为你看到了。我要了你的代码,我不知道你在尝试什么。我的回答在这里。我以为你收到通知了。
= form.collection_check_boxes :helpability, People.all_helps, :id, :name do |block| 
  = block.label { block.check_box id: "#{block.object.name}-id" } 
  = block.label { block.object.name }