我的表格中有一个单选按钮,如下所示
<div class="btn-group" data-toggle="buttons-radio">
<%= f.radio_button :start_year, :class=> "btn", :value=> '2007' %> 2007
<%= f.radio_button :start_year, :class=> "btn", :value=> '2008' %> 2008
<%= f.radio_button :start_year, :class=> "btn", :value=> '2009' %> 2009
</div>
我正在使用Twitter Bootstrap
我想做以下操作:
<div class="btn-group" data-toggle="buttons-radio">
<%= f.radio_button :start_year, :class=> "btn", :value=> '2007', if @dates.start_year == 2007 :checked => true end %> 2007
<%= f.radio_button :start_year, :class=> "btn", :value=> '2008', if @dates.start_year == 2008 :checked => true end %> 2008
<%= f.radio_button :start_year, :class=> "btn", :value=> '2009', if @dates.start_year == 2009 :checked => true end %> 2009
</div>
但是我会收到以下错误:
syntax error, unexpected keyword_ensure, expecting ')'
syntax error, unexpected keyword_end, expecting ')'
我必须在收音机按钮中的if语句中犯错,但是我不确定如何准确纠正此
尝试
<%= f.radio_button :start_year, :class=> "btn", :value=> '2007', :checked => Proc.new { @dates.start_year == 2007 ? true : false } %> 2007
我知道这是一个古老的问题,但也许对他人有所帮助。我认为我们在这里不需要Proc
,我们只能将布尔值传递给:checked
密钥。另外,@dates.start_year == 2007 ? true : false
可以简化为@dates.start_year == 2007
。
因此,结果将像
一样简单<%= f.radio_button :start_year, :value=> '2007', :checked => @dates.start_year == 2007%> 2007