2

simple_formRails 3.2 で 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を更新します。

4

1 に答える 1

0
<%= f.button do %>
    <i class="icon-save"></i> <%= "#{f.object.new_record? ? 'Create' : 'Update'} #{f.object.class.model_name.human}" %>
<% end %>

このためのヘルパーメソッドを作成することをお勧めします。I18nを使用する場合は、ソースコードbuttonおよびsubmit_default_valueメソッド、1763行目と1776行目)を確認してください。それはかなり明確です。

于 2013-02-01T00:18:01.500 に答える