【发布时间】:2019-10-22 20:35:40
【问题描述】:
以下是rails表单的摘录
<%= form_with(model: @usercontent) do |form| %>
以下 html 呈现集合的位置
<div class='alert'>
<select class='image-picker show-html' name="ki_id" id="ki_id">
<div class='row'>
<div class='buttonselector'>
<label for="usercontent_ki_id_1">
<input class="invisi-selector" type="radio" value="1" name="usercontent[ki_id]" id="usercontent_ki_id_1" />
<img src='/assets/ki/circle-15-1c2a221aa37a24e5b23acd7124cd47ae2a17434af589353a063633a6ef5abca6.svg'>
<div></div>
</label>
</div>
</div>
<div class='row'>
<div class='buttonselector'>
<label for="usercontent_ki_id_2">
<input class="invisi-selector" type="radio" value="0" name="usercontent[ki_id]" id="usercontent_ki_id_2" />
<img src='/assets/ki/aerialway-15-621960ddf5e9930f1b1102faa4ee23542e11163f48a67470f1fe245abbc27955.svg'>
<div></div>
</label>
</div>
</div>
[...]
</select>
</div>
但是,当用户选择一个项目时,提交的参数是“ki_id”=>“0”。上面的结构哪里错了?
【问题讨论】:
-
你能告诉我们那个集合的rails代码吗
-
不使用collection_select,希望确保html首先呈现。只有一个 if 语句来确保选择数据库值是正确的
<% if @usercontent.ki_id == ki.id %> <input class="invisi-selector" type="radio" value="1" name="usercontent[ki_id]" id="usercontent_ki_id_<%= ki.id %>" />else value=0... 和 '>
标签: ruby-on-rails forms radio-button