我正在尝试使用
进行测试发送u = User.invite!({:email =>“myemail@live.com”,:name =>“John Doe”},User.find(1))
为什么Devise Invitable在我实际上只希望更新用户表时尝试使用wierd / wrong值插入表公司和company_roles。
此行为导致ROLLBACK,因为邀请没有更新这些表的正确值。
我只想在用户接受邀请后在回调中保存像company_role这样的内容。如何在回调函数中执行此操作以及如何访问邀请函发送的初始值。
例如,我可以这样做吗?
u = @referrer.invite!({
email: params[:email],
title: params[:title],
first_name: params[:first_name],
last_name: params[:last_name],
website: @website,
company_id: @company,
country: @country,
}, @referrer)
然后在User模型中使用它来检索accept回调中的一些值?
after_invitation_accepted :email_invited_by
def email_invited_by
# ...
end