简单的形式。如何覆盖输入为text_field?

时间:2013-01-19 03:03:38

标签: ruby-on-rails jquery-ui date simple-form

我正在使用simple_form gem,我需要将“created_at”字段的类型从输入更改为text_field(为了将此字段与jQuery日期选择器一起使用)。有可能吗?

as: :string

不适合,因为它不适用于jQuery.datepicker

1 个答案:

答案 0 :(得分:0)

需要在app / inputs / date_picker.rb中创建特定的DatePickerInput类

app/inputs/date_picker.rb

class DatePickerInput < SimpleForm::Inputs::StringInput 
  def input                    
    value = object.send(attribute_name) if object.respond_to? attribute_name
    input_html_options[:value] ||= I18n.localize(value) if value.present?
    input_html_classes << "datepicker"

    super # leave StringInput do the real rendering
  end
end

的javascript

jQuery -> 
 $('input.date_picker').datepicker()

在表单中添加以下行

    = f.input :due, as: :date_picker

由于rio

,这个帖子解决了我的问题How do i write a cleaner date picker input for SimpleForm