2010-04-28 12 views
5

¿Cómo puedo agregar mis propios tipos de campo a formtastic?Formtastic, propio: como tipo de entrada

Para exemple, tengo que tener una entrada de fecha y hora personalizado, y quiero algo como esto:

<%= f.input :start_date , :as => :my_date %> 

Esto, obviamente, no funciona porque Formtastic no se conoce el: my_date (sólo: boolean, : cadena,: fecha y así sucesivamente ...)

Pero, ¿cómo puedo agregar tipos de entrada adicionales?

Respuesta

9

es necesario agregar un método de entrada personalizado:

class MyCustomFormtasticFormBuilder < Formtastic::SemanticFormBuilder 
    protected 
    def my_date_input(method, options) 
    basic_input_helper(:text_field, :my_date, method, options) 
    end 
end 

que es perfecto para, dicen que los nuevos tipos de entrada HTML5. Lo usa de esta manera:

<% form_form @model, :builder => MyCustomFormtasticFormBuilder do |f| %> 
    <%= f.input :start_date, :as => :my_date 
<% end %> 
+2

respuesta perfecta. Mi única adición es que debe configurar Formtastic para nosotros MyCustomFormtasticFormBuilder en lugar de Formtastic :: SemanticFormBuilder, que se puede hacer en el inicializador de configuración proporcionado con Formtastic. –

Cuestiones relacionadas