如何使简单表格中的自定义标签干燥

时间:2018-06-20 10:06:24

标签: ruby-on-rails simple-form

我有时有时会在输入标签前添加一个图标。我可以通过创建帮助器方法来生成图标并将其简单地传递到输入声明中来实现,例如

f.input :name, label: label_with_icon("Name")

不幸的是,我的需求有所增长,我还需要标签:

  • 属性的翻译文字
  • 有一个包含各种文字的工具提示
  • 有一个颜色也不同的图标

这使Rails助手变得混乱,迫使我每次都传递很多参数。

我知道我可以用简单的形式创建自定义输入类,但是我需要可以在所有simple_form输入类型中使用的东西。除非我弄错了,否则这将需要我为每种输入类型创建一个自定义输入类,以提供此自定义标签功能。

我想只创建一个类并像这样使用它

f.input :name, label: :my_funky_label, label_icon: :rss, label_color: '#ccc'

还有更多的DRYer方法来实现这一目标吗?

0 个答案:

没有答案