0

フォームをビューからパーシャルに分離しようとして問題が発生しています。新規ビューと編集ビューで同じフォームを使用したい。これらは両方とも同じページにあります。新しいモデル フォームはページの上部にあり、コントローラーで設定した変数を使用します。

<%= form_for @new_hire do |f| %>
<%= render :partial => 'new_hire_requests/form', :locals => {:f => f} %>
<% end %>

次に、別のパーシャルによってレンダリングされる保留中の承認のパーシャルがあります

<%= render :partial => 'pending_approval', :collection => @pending_approval %>

そして、保留中の承認部分の中に私はこれを持っています

<%= form_for pending_approval do |f| %>
<%= render :partial => 'new_hire_requests/form', :locals => {:f => f} %>
<% end %>

これはエラーをスローしています

undefined method `new_hire_request_path' for #<#<Class:0x0000010488ac98>:0x0000010223ffc0>

同じページの新しいフォームと編集フォームの両方にフォーム コードを再利用する方法はありますか?

コントローラ ロジック

@new_hire = NewHireRequest.new
@new_hire_requests = current_user.new_hire_requests
@pending_approval = @new_hire_requests.select{|p| p.status == 'pending_hr_approval' || p.status == 'pending_exec_approval'}

部分コード

<%= render 'shared/error_messages', object: f.object %>

<fieldset class="first">
<%= f.label :first_name, "First Name" %>
<%= f.text_field :first_name %>
</fieldset>
<fieldset>
<%= f.label :last_name, "Last Name" %>
<%= f.text_field :last_name %>
</fieldset>
<%= f.submit "Submit for Approval <i class='icon-share-alt icon-white'></i>", 
        class: "button_green" %>
4

1 に答える 1

1

リソース new_hire_requests をルートに追加して、それで完了です。

于 2012-11-01T20:45:22.113 に答える