2012-01-12 12 views
7

Estoy tratando de formatear un formulario y los campos de texto responden a algunos métodos, y no a otros.Activeadmin y Formtastic: formulario no responde: tamaño

que puede hacer cosas como:

f.input :name, :input_html => { :maxlength => 10 } 
f.input :name, :input_html => { :disabled => true } 

Pero si trato de hacer cualquiera de los siguientes, que no funcionan:

f.input :name, :input_html => { :size => 10 } 
f.input :name, :input_html => { :class => 'autogrow' } 
f.input :name, :input_html => { :rows => 10, :cols => 10 } 

cuando intento usando: tamaño, por ejemplo, el html generado muestra que size = 10, pero no se refleja en la forma real.

Estos fueron extraídos más o menos directamente de la documentación de Formtastic en Github, a lo que se refiere la documentación de Activeadmin.

Respuesta

11

No estoy seguro de si su pregunta está resuelta o no.

Sin embargo, según Formastic wiki oficial, su código debería funcionar: Atributos

Personalizar HTML para cualquier entrada utilizando la opción: input_html. Normalmente, esto se utiliza para desactivar la entrada, cambiar el tamaño de un campo de texto , cambiar las filas en un área de texto, o incluso añadir una clase especial a una entrada para adjuntar un comportamiento especial como textareas crecimiento automático:

<%= semantic_form_for @post do |f| %> 
    <%= f.inputs do %> 
    <%= f.input :title,  :input_html => { :size => 10 } %> 
    <%= f.input :body,  :input_html => { :class => 'autogrow', :rows => 10, :cols => 20, :maxlength => 10 } %> 
    <%= f.input :created_at, :input_html => { :disabled => true } %> 
    <%= f.input :updated_at, :input_html => { :readonly => true } %> 
    <% end %> 
    <%= f.actions %> 
<% end %> 

https://github.com/justinfrench/formtastic

si su código no funciona, por favor, echa un vistazo a los registros de errores, o poner más información de depuración en el archivo de Erb, para ver si usted r carriles se está ejecutando en el modo de producción.

+0

Para mí esto no funciona. Las filas y la clase llegan al área de texto, pero no hacen nada ... Estoy usando Foundation Zurb. –

+1

Tampoco funcionó para mi caso. Estoy usando activeadmin con un parcial para generar el formulario – songyy

+0

el administrador activo es malo ... olvidémoslo ...^_^ –

5

tuve el mismo problema. quería un formulario anidado para editar con tamaño de campo de texto personalizado. Esto funcionó para mí.

form do |f| 
     f.inputs "Header" do 
     cf.input :name, :input_html => { :class => 'some_style', :rows => 2, :style => 'width:50%'} 
     end 
     f.actions 
    end 

así que básicamente tienes que crear tu propia clase o simplemente trabajar con: el estilo.

Por forma anidada u puede utilizar este código

form do |f| 
     f.inputs "Header" do 
     f.has_many :name,:allow_destroy => true,:new_record => true do |cf| 
      cf.input :first_name, :input_html => { :class => 'some_style', :rows => 2, :style => 'width:50%'} 
     end 
     end 
     f.actions 
    end 
Cuestiones relacionadas