2014-05-23 5 views
0

을 forbiddenattributes 만들 대체 메서드를 만들지 만 원래의 Create 액션은 아닙니다. IH를 사용하는 몇 가지 특별한 방법이 있다고 생각합니다.하지만이 문제에 난처한 상황입니다.inherited_resources는</p> <p>기본적으로, 후, 생성 내가 하나를 사용하여 ForbiddenAttributes 오류를 얻고 다른 페이지로 리디렉션 할 (inherited_resources에 어쩌면 더 나은 구성 할 수 있지만, 신규) 방법은 내가 두 만드는 방법이있다

필자는 두 번째 작업에서 매개 변수를 수동으로 할당해야합니다. IH 방식으로해야한다고 추측합니다. 그 행은 불어서 문제없이 IH가 오류없이 어떻게이 작업을 수행합니까? 내가 전혀 생각이 왜이 없다 -

def create 
    if can? :create, LeaveRequest 
    create! { leave_requests_url } 
    end 
end 

def manage_create 
    @leave_request = LeaveRequest.new(params[:leave_request]) 
    if can? :create, LeaveRequest 
    create! { manage_leave_requests_url } 
    end 
end 

def permitted_params 
    {:leave_request => params.fetch(:leave_request, {}).permit(:user_id, :controller, :manager_id, :part_day, :comment, :selected_dates, :status, :leave_type_id, leave_dates_attributes: 
     [:id, :leave_request_id, :hours, :date_requested, :_destroy])} 
end 

노선 내가 내 manage_create 기능에 매개 변수의 전체 목록을 추가하는 데 필요한 IH 1.4.1

답변

0

을 사용하고

match 'manage_create', to: 'leave_requests#manage_create', as: :manage_create_leave_request, via: [:post] 

으로 정의된다 기존의 permitted_params 메소드를 사용하지 않습니다.

@leave_request = LeaveRequest.new(params[:leave_request].permit(:user_id, :controller, :manager_id, :part_day, :comment, :selected_dates, :status, :leave_type_id, leave_dates_attributes: 
     [:id, :leave_request_id, :hours, :date_requested, :_destroy]))