我在Rails 3.2上使用simple_form
gem创建表单。
我遇到的问题是我希望在表单的font-awesome
行添加f.button :submit
图标。由于输出属于input
类型,因此我无法将图标元素嵌入其中。
我只需将submit
按钮硬编码到包含图标的表单中,但我不知道如何获取按钮值 - Create %model
/ Update %model
。
我的代码发布在下面:
<div id="form">
<%= simple_form_for @program, :html => { :class => 'form-horizontal' } do |f| %>
<%= f.input :name %>
<%= f.input :url %>
<%= f.input :description, :input_html => { :class => "span5", :rows => 10 } %>
*********************
<%= f.button :submit do %>
<i class="icon-save"></i> What Here??? <--- Doesn't work since output is type input
<% end %>
*********************
<button class="btn">
<i class="icon-save"></i> <%= f.button(:submit).label %> <--- Doesn't work, alternative?
</button>
<% end %>
</div>
预期产出:
<button type="submit" class="btn">
<i class="icon-plus-sign"></i> Create *ModelName*
</button>
或更新 ModelName ,具体取决于控制器操作。
答案 0 :(得分:0)
<%= f.button do %>
<i class="icon-save"></i> <%= "#{f.object.new_record? ? 'Create' : 'Update'} #{f.object.class.model_name.human}" %>
<% end %>
最好为此制作一些辅助方法。如果您想使用I18n,请查看source code(button
和submit_default_value
方法,行1763和1776)。很清楚。