我正在我的 Rails 应用程序中创建一个模块,用于“添加团队成员”到项目中。我正在使用 devise_invitable。
在这种情况下,如果我添加一个新的电子邮件地址,则会发送确认邮件和邀请邮件......因为这更有意义
我只是希望发送邀请邮件(并且在用户接受邀请邮件后,他可以发送到注册页面)......在接受邀请之前确认是没有意义的。
我当前的代码如下:
def create_team_members
# find the case
@case = Case.find_by_id(params[:id])
# TODO:: Will change this when add new cse functionality is done
params[:invitation][:email].split(',').map(&:strip).each do |email|
# create an invitation
@invitation = Invitation.new(email: "#{email}".gsub(/\s+/, ''), role: params[:invitation][:role].rstrip, case_id: @case.id, user_type_id: params[:invitation][:user_type_id])
if @invitation.save
# For existing users fire the mail from user mailer
if User.find_by_email(email).present?
UserMailer.invite_member_instruction(@invitation).deliver
@invitation.update_attributes(invited_by: current_user.id)
else
# For new users use devise invitable
user = User.invite!(email: "#{email}", name: "#{email}".split('@').first.lstrip)
user.skip_confirmation!
user.save
@invitation.update_attributes(invitation_token: user.invitation_token, invited_by: current_user.id)
end
end
end
redirect_to dashboard_path
end
我不知道我做错了什么......
请帮助...谢谢。