当我f.input :start_date, as: :date
时,我会得到3个选择元素(日,月和年)。
我可以f.input :start_date, as: :string
获取input[type=text]
元素,但如何使用simple_form生成input[type=date]
元素?
答案 0 :(得分:18)
答案 1 :(得分:9)
默认情况下,Simple Form不会生成HTML 5日期/时间输入,因此使用日期,时间或日期时间都将使用普通的Rails助手生成选择框。我们认为浏览器还没有完全准备好这些,但您可以通过传递html5选项轻松选择每个输入:
<%= f.input :expires_at, as: :date, html5: true %>
希望simple_form documentation中的这条信息可以解决您的问题。
答案 2 :(得分:0)
您也可以将其设置为默认值,定义一个使其成为默认值的类:
# Use html5 date inputs by default, use html5: false to force
# the use of multiple selects
class DateTimeInput < SimpleForm::Inputs::DateTimeInput
private
def use_html5_inputs?
input_options.fetch(:html5, true)
end
end