我试图理解为什么这会产生对或错。
相关代码:
<div class="form-group">
<%= label(:store_item, :can_be_shipped, 'Can be Shipped?')%>
<div class="form-inline">
<div class="radio inline">
<%= radio_button(:store_item, :can_be_shipped, true, :checked => true)%>
<%= label(:store_item, :can_be_shipped, 'Yes', :value => true)%>
</div>
<div class="radio inline">
<%= radio_button(:store_item, :can_be_shipped, false)%>
<%= label(:store_item, :can_be_shipped, 'No', :value => false)%>
</div>
</div>
</div
因此,当我加载表格并选择“是”时,说该商品可以运送到国外,当我在商店页面上单击商品本身时,该商品已经寄出了吗?确实如此。我知道如何更改它,因此当我选择“是”时,在home.html页上使用if else语句查看该项目时,它会显示为“是”。
我想知道为什么,当我将标签中的:value更改为Yes或No时,实际上并没有从true更改为Yes。有人可以解释为什么会这样吗?
答案 0 :(得分:0)
标签仅用于查看目的,并且在与与其关联的字段相关的验证失败时标记错误消息。如果您需要将can_be_shipped
更改为“是”或“否”,则还必须更改单选按钮。
<div class="form-group">
<%= label(:store_item, :can_be_shipped, 'Can be Shipped?')%>
<div class="form-inline">
<div class="radio inline">
<%= radio_button(:store_item, :can_be_shipped,'Yes', :checked => true)%>
<%= label(:store_item, :can_be_shipped, 'Yes', :value => 'Yes')%>
</div>
<div class="radio inline">
<%= radio_button(:store_item, :can_be_shipped, 'No')%>
<%= label(:store_item, :can_be_shipped, 'No', :value => 'No')%>
</div>
</div>
</div>