ruby-on-rails - 希望 rails simple_form 单选按钮显示不是值的文本

标签 ruby-on-rails forms radio-button simple-form

我正在使用 simple_form gem https://github.com/plataformatec/simple_form创建一些输入字段;其中之一是单选按钮组,如下所示:

<%= f.input :due_date, :collection => ['Today', 'Tomorrow', 'In 3 Days'], :as => :radio %>

所以数据库“due_date”中的这个字段是一个日期。但是,与其让人们点击那个小小的日历,我们知道通常人们只想要这三个选项。我确实想使用单选按钮。但是这一行的输出表明,如果我现在点击提交按钮,due_date 参数将在那里指定值,即今天、明天或 3 天后。这是今天部分的输出 HTML。
<span>
<input class="radio optional" id="project_due_date_today" name="project[due_date]" type="radio" value="Today">
<label class="collection_radio" for="project_due_date_today">Today</label>
</span>

我理想中想要的是:
<%= f.input :due_date, :collection_to_params => [Date.today, Date.tomorrow, Date.today+3], :display_value => ['Today', 'Tomorrow', 'In 3 Days'], :as => :radio %>

因此,当用户单击一个并提交时,我实际上将一些 ISO 日期发送到服务器。

有什么想法吗?

谢谢!

最佳答案

<%= f.input :due_date, 
:collection => [[Date.today, 'Today'], [Date.tomorrow, 'Tomorrow'], [Date.today+3, 'In 3 Days']], 
:label_method => :last, 
:value_method => :first, 
:as => :radio_buttons %>

因此,您可以将数组数组传递给集合哈希,然后可以传递另外两个选项来指定此输入的 VALUE 和此输入的可见标签,它们被正确命名为 label_method 和 value_method。词方法是,在有问题的集合的单个项目上调用什么方法来检索标签或值。在数组数组的情况下,array.first 是我的值,array.last 是我的标签。因此上面的代码

关于ruby-on-rails - 希望 rails simple_form 单选按钮显示不是值的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7498005/

相关文章:

javascript - PHP for 循环生成单选按钮,我只想从这些按钮中选择一个

ruby-on-rails - rails 。简单形式的多部分文件不起作用

ruby-on-rails - rails : From UUID to ID

php - 使用文本区域发布数据是否会自动添加斜杠(转义)文本?

Python Mechanize 错误 +

javascript - 打印给用户的单选按钮值的总和

单选按钮和选中按钮的 CSS 样式在 RCP 应用程序 e4 中不起作用

ruby-on-rails - twitter消费者 key 和访问 token 有什么区别

ruby-on-rails - 当我们在 set 中传递超过 4 个值时,ruby 如何在 set 中排列该值

php - Zend在表单输入元素中解码html实体导致空值