首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >设计可邀请的获取无效令牌

设计可邀请的获取无效令牌
EN

Stack Overflow用户
提问于 2014-03-18 08:42:12
回答 1查看 1.2K关注 0票数 0

我使用了Devise和Devise-invitable。但是,当我尝试接受邀请时,系统会显示令牌无效。新设计在如何保存我知道的导致问题的token...which (https://github.com/scambra/devise_invitable/issues/402)方面有一个问题。

然而,我仍然不确定如何修复它。创建者说使用@token...but,我不知道如何获取@token。这个变量从何而来?这是我到目前为止所知道的:

代码语言:javascript
复制
class Users::InvitationsController < Devise::InvitationsController
  private

  def invite_resource
    resource_class.invite!(email: params['user']['email'], company_id: current_user.company.id) do |u|
      # skip sending emails on invite
      u.invited_by_id      = current_user.id
      u.invited_by_type    = 'User'
      u.skip_invitation    = true
      u.invitation_sent_at = Time.now
    end
  end

  def accept_resource
    debugger
    resource = resource_class.accept_invitation!(update_resource_params)
  end

以及我正在使用的链接:

代码语言:javascript
复制
= link_to 'Accept invitation', accept_invitation_url('user', :invitation_token => @token)

之前,我使用的是invitation.invitation_token,而不是@token,但我猜这不是散列版本?如何在上述验收链接中插入正确的版本?

EN

回答 1

Stack Overflow用户

发布于 2014-05-27 23:57:36

您的电子邮件链接看起来很好,因为@token是由邮件程序生成的。如果你像我一样,你可能有一个无效的列类型。例如,在我的应用程序中,invitation_created_at的类型是错误的,所以我进行了迁移,将其更改为datetime:

代码语言:javascript
复制
class ChangeUsersInvitationCreatedAtToDatetime < ActiveRecord::Migration
  def change
    change_column :users, :invitation_created_at, :datetime
  end
end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22468308

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档