无法接受来自devise_invitable

时间:2019-03-19 11:07:43

标签: ruby-on-rails devise devise-invitable

我正在开发一个小型应用程序,将Devise与两个模型结合使用:CoachAthlete(一个教练可以有几个运动员)。现在,我正在尝试使用 DeviseInvitable 宝石实现邀请系统。

一切似乎都很好:当教练单击new_athlete_invitation_path时,将创建一个运动员,其中有一个invitation_token和一个coach_id。但是,如果我尝试接受邀请,遵循路线中的路径和invitation_token,则重定向并显示以下消息:

Started GET "/athlete/invitation/accept?invitation_token=536dc1aee8faef0842a21f6c90fa68121e6c3858c5697215b8282474875fdff0" for 127.0.0.1 at 2019-03-19 11:34:34 +0100
Processing by Athletes::InvitationsController#edit as HTML
  Parameters: {"invitation_token"=>"536dc1aee8faef0842a21f6c90fa68121e6c3858c5697215b8282474875fdff0"}
  Athlete Load (1.0ms)  SELECT  "athletes".* FROM "athletes" WHERE "athletes"."invitation_token" = $1 ORDER BY "athletes"."id" ASC LIMIT $2  [["invitation_token", "4316731df92b3e5d369c17971b9db96aea1d33de8741ae5602f6065ef8174a5b"], ["LIMIT", 1]]
  ↳ /home/soykje/.rbenv/versions/2.5.3/lib/ruby/gems/2.5.0/gems/activerecord-5.2.2/lib/active_record/log_subscriber.rb:98
Redirected to http://localhost:3000/
Filter chain halted as :resource_from_invitation_token rendered or redirected
Completed 302 Found in 8ms (ActiveRecord: 3.0ms)

我无法弄清楚这个问题的原因...这与我的两种模型配置有关吗?我错过了什么吗?

提前致谢!


NB:来自我的Gemfile:

ruby '2.5.3'
gem 'rails', '~> 5.2.2'
gem 'devise', '~> 4.6', '>= 4.6.1'
gem 'devise_invitable', '~> 2.0'

1 个答案:

答案 0 :(得分:0)

好的,那是我的错误:我试图使用未加密的令牌接受邀请。只需添加LetterOpener,我便可以使用正确的生成的链接确认邀请。 始终使用生成的链接!

相关问题