私のapplication_controllerに追加しました:
def instantiate_controller_and_action_names
@current_action = action_name
@current_controller = controller_name
end
現在のアクションに応じて、ビューで特定のフィールドを表示/非表示にします。たとえば、新しいユーザーを追加するときはパスワード フィールドを表示する機能が必要ですが、ユーザーを編集するときはパスワード フィールドを表示したくありません。
私が抱えている問題は、新しいレコードを作成するときに @current_action が「new」の値のみを返し、レコードを編集しているときに値を返さないことです (例: http://localhost:3000/users /6/edit )、または逆を使用して @current_action != 'new' かどうかを確認すると、どちらの場合もフィールドがまだ表示されています。
<%if @current_action != 'new'%>
<tr><td>AAAAAAA</td></tr>
<%else%>
<tr>
<th class="">Password</th>
<th class="">Password Confirmation</th>
</tr>
<tr>
<td><%= f.password_field :password %></td>
<td><%= f.password_field :password_confirmation %></td>
</tr>
<%end%>
「編集」が返されない、またはこれを達成するためのより良い/ベストプラクティスの方法はありますか? ありがとう!