2016-07-31 73 views
0

我無法允許invite#accept中的其他參數。我已經安裝了一切,這裏是一個控制器。 但在方法accept_resource中,仍然只有3箇舊參數被接受,其他參數雖然都出現在表單上,​​但沒有經過。無法在設計中允許其他參數#接受邀請

class MyInvitationsController < Devise::InvitationsController 
    before_filter :configure_permitted_parameters, if: :devise_controller? 
    before_filter :update_sanitized_params, only: [:edit, :update] 

    def edit 
    puts "edit...." 
    super 
    end 

    private 

    def accept_resource 
    puts "accept_resource..." 
    resource = resource_class.accept_invitation!(update_resource_params) 

    # but it still permits only :password, :password_confirmation and :invitation_token 
    resource 
    end 

    protected 

    def configure_permitted_parameters 
    puts "configure_permitted_parameters..." 
    devise_parameter_sanitizer.permit(:sign_up, keys: [:aaa, :bbb, :ccc, :password, :password_confirmation, 
             :invitation_token]) 

    end 

    def update_sanitized_params 
    puts "update_sanitized_params..." 

    devise_parameter_sanitizer.permit(:sign_up, keys: [:aaa, :bbb, :ccc, :password, :password_confirmation, 
             :invitation_token]) 

如何解決呢? 我使用設計4.2和1.6 devise_invitable

回答

0

在你的before_filter嘗試刪除

if: :devise_controller? 

,因爲你不是色器件控制器。