轨道 4:设计不可邀请的不允许参数



>我正在使用 Devise Invitable gem 来邀请用户,创建用户后,我创建了一个客户端,其user_id等于刚刚创建的用户的id

class User < ActiveRecord::Base
after_create :create_client
def create_client
new_client = Client.new()
new_client.user_id = self.id
new_client.save
end
end

这有效,但是一旦我尝试向参数添加location_id,我就会看到:

Unpermitted parameter: location_id

这是带有location_id的新方法

def create_client
new_client = Client.new()
new_client.user_id = self.id
new_client.location_id = self.location_id
new_client.save
end

我已经阅读了很多关于这个问题的回复,但似乎找不到真正的解决方案来将此参数列入白名单。 有没有人有一种方法可以在 Rails 4 和 Devise 3.5 中使用

将参数列入白名单至关重要,:invite而不仅仅是:accept_invitation。 当我将其添加到我的application_controller时,以下内容有效:

def configure_permitted_parameters
devise_parameter_sanitizer.for(:accept_invitation) << [:location_id]
devise_parameter_sanitizer.for(:invite) << [:location_id]
end

最新更新