2012-01-12 35 views
7

我想格式化窗体和文本字段响应某些方法,而不是其他人。Activeadmin和Formtastic:窗体没有响应:大小

我可以做这样的事情:

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

但是,如果我尝试做任何以下的,他们不工作:

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

当我尝试使用:尺寸,例如,生成的html显示大小= 10,但并未反映在实际的表单中。

这些或多或少都是从GitHub上的Formtastic文档中提取出来的,这些文档是由Activeadmin文档引用的。

回答

11

我不确定您的问题是否已解决。

然而,根据Formastic官方WIKI,你的代码应工作:input_html选项:使用任何输入

自定义HTML属性。 典型地,这是用来禁止输入,更改文本 字段的大小,改变在一个textarea的行中,或甚至一个特殊的类 添加到输入附加像自动增长文字区域的特殊行为:

<%= 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

如果你的代码不能正常工作,请查看错误日志,或把更多的调试信息到您的ERB文件,就看你[R下轨生产模式下运行。

+0

对我来说,这是行不通的。行和班级确实去了textarea,但是什么都不做。我正在使用Foundation Zurb。 – 2013-10-16 14:07:44

+1

它也不适用于我的情况。我正在使用activeadmin以生成表格 – songyy 2015-06-26 07:25:35

+0

活动管理员是邪恶的......让我们忘记它吧......^_^ – 2015-06-27 21:59:09

5

我有同样的问题。我想要一个嵌套的表单进行编辑与自定义文本字段大小。这为我工作。

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

所以基本上你必须创建你自己的类或只是使用:style。

对于嵌套形式u可以使用此代码

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