def create
if User.invite!(user_params)
flash[:success] = t('flashes.users.create_success')
else
flash[:error] = t('flashes.users.create_error')
end
redirect_to company_path(id: company.slug)
end
User.invite!
将创建用户,然后发送邀请以设置密码。我只希望它发送设置密码的邀请,然后只有在用户设置了密码时才会保留用户。
答案 0 :(得分:1)
我不会惹恼那样的设计邀请实现。
可能使用枚举向用户添加状态列,以便您可以隔离未接受其邀请的用户,并且作为评论者之一表示稍后删除过时的用户。
enum status: {invited: 0, accepted: 1}
然后您可以执行以下操作:
User.invite!(status: "invited")
当用户通过挂钩gem提供的回调来接受时,你必须设置“已接受”状态(参见https://github.com/scambra/devise_invitable)。