我使用simple_form
并在我的表单代码中使用此代码:
<%= f.input :fruit, as: :check_boxes, collection: ['Apple', 'Orange', 'Other'] %>
所以我希望在其旁边有一个与“其他”字段关联的文本输入,以便用户可以点击“其他”并输入他自己的水果名称。我该怎么做?
我尝试使用f.input(...)
作为收藏品之一,我也尝试在do
块中添加它,但这一切似乎完全无关紧要。
我如何得到我想要的行为?谢谢。
答案 0 :(得分:2)
你可以这样做:
# view
<%= text_field_tag :alternative_fruit %>
# controller
if params[:alternative_fruit].present? && params[:your_model_name][:fruit].select(&:present?).blank?
params[:your_model_name][:fruit] = params[:alternative_fruit]
end
如果您没有选择带有替代名称的复选框,如果您定义了一个名称,则会覆盖水果名称。