3

1.レコードの編集中にテキストフィールドを編集不可(読み取り可能= false)にするにはどうすればよいですか?

マイフォームビューコード

  <div class="field">
    <%= f.label t :profile_name %><br />
    <%= f.text_field :profile_name %>
  </div>

2.レコードの編集中にフィールドを表示するにはどうすればよいですか。データベーステーブルに、レコードの編集中に入力するために表示したいフィールドがありますが、新しいレコードを作成している間、そのフィールドは表示されません。

解決済み:

ネバーマインドガイ私は解決策を得ました、

1. 
<div class="field">
  <%= f.label t :profile_name %><br />
  <%= f.text_field :profile_name, :readonly => f.object.persisted? %>
</div>

2. 
<% if f.object.persisted?%>
  <div class="field">
    <%= f.label t :another_field %><br />
    <%= f.text_field :another_field%>
  </div>
<% end %>
4

2 に答える 2

6

テキストボックスを編集不可にする場合は、CSS を少し使用するか、次のようにフロント エンドで行うことができます。

 <div class="field">
    <%= f.label t :profile_name %><br />
    <%= f.text_field :profile_name, disabled: disabled %>
 </div>

:readonly => trueまたはの代わりに追加しdisabledます。それで、

<div class="field">
    <%= f.label t :profile_name %><br />
    <%= f.text_field :profile_name, readonly: true %>
 </div>

ビューに無効を追加して、編集不可能なテキスト ボックスを作成します。機能しない場合は、css でも実行できます。うまくいったかどうか教えてください。

于 2013-02-12T10:40:29.507 に答える