【问题标题】:Generating a select tag with rails with range of numbers with steps使用带有步骤的数字范围的导轨生成选择标签
【发布时间】:2012-06-30 01:56:50
【问题描述】:

编写rails select标签的最简单方法是什么

我知道这必须很简单,但我在语法上苦苦挣扎,我知道必须有一种比我以前更优雅的方式来编写它。

谢谢!

【问题讨论】:

    标签: ruby-on-rails forms select


    【解决方案1】:
    select_tag "sizes", options_for_select((4..15).step(0.5))
    

    我就是这样写的……但这是最好的方法吗?

    另外,如果我希望 4.0/5.0/6.0 等将 4/5/6 读取为整数,有没有办法在一行中执行/包含这个?

    【讨论】:

    • 如果它们是整数,您可以映射这些值并将它们从浮点数转换为固定数:(4..15).step(0.5).map{ |n| n % 1 == 0 ? n.to_i : n }
    【解决方案2】:
    select_tag "sizes", options_for_select( (4..15).step(0.5).map{|n| n%1 == 0 ? n.to_i : n} )
    

    【讨论】:

      【解决方案3】:

      options_for_select 方法可以满足您的需求,但前提是您可以使用正确的数据为其播种。这意味着您需要一个包含适当值的数组。例如:

      options_for_select((0..28).to_a.collect { |v| v.to_f / 2 + 1 })
      

      【讨论】:

        猜你喜欢
        • 2010-11-01
        • 2018-11-23
        • 2017-04-28
        • 2014-03-11
        • 2013-08-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多