Ruby on rails 3.2 避免基于属性值渲染简单的表单组件

Ruby on rails 3.2 避免基于属性值渲染简单的表单组件,ruby-on-rails-3.2,simple-form,Ruby On Rails 3.2,Simple Form,我有一个CustomInput

我有一个
CustomInput
,如果属性值为空,我希望避免渲染它。注意,我想避免渲染所有包装器和组件。我是否可以在控件内执行此操作,以避免为模板中的每个控件写入
if model.attribute.blank?

只需将
FormBuilder子类化,并重写
input
方法

class MyFormBuilder < SimpleForm::FormBuilder

  def input(attribute_name, options = {}, &block)
    if @template.my_action_show?
      return if @object.send(attribute_name).blank?
    end 
    super
  end

我也在谷歌集团的简单表单上发布了这篇文章
params[:action]=='show'