如何在接受DeviseInvitable邀请时添加额外的验证

时间:2012-09-04 17:08:36

标签: ruby-on-rails devise

亲爱的Stackoverflowers,

我正在构建一个信息系统,其他用户(称为“拥有系统的所有者”)可以注册其他用户。我正在使用Devise Invitable来获取邀请功能。 受邀用户将收到包含验证链接的电子邮件。如果他们点击它,他们可以设置密码并登录系统。

我想在用户设置密码时构建额外的验证。 用户必须输入他或她的“单一代码”,由邀请者亲自或电话等提供给受邀用户。在邀请用户时,单代码存储在数据库中。

当受邀用户输入无效的单一代码时,用户将被重定向到同一页面并且他或她必须再次尝试。 如何应用对uni的检查 - 代码,如果失败,我该如何适当重定向?

# Controller for handling Owners
# This class uses Devise-Invite methods for inviting new Owners
class Devise::Invitations::OwnerInvitationsController < Devise::InvitationsController

  # GET /owners/new
  def new
    super
  end

  # POST /owners
  def create
    params[:owner][:parent_id] = current_inviter
    super
  end

  #  PUT /owners
  def update
    if true #TODO: check if entered uni-code equals the owner's uni-code
      super
    else
      #TODO: uni-code does not match, redirect (howto do a proper redirect)?
    end
  end

# GET  /owners/invitation/accept?invitation_token={abcdef}
  def edit
      super
  end

1 个答案:

答案 0 :(得分:0)

您是否希望添加其他邀请代码以验证用户。

查看以下可能有用的链接

https://github.com/scambra/devise_invitable

Ruby on rails: Devise, want to add invite code?

谢谢,

Nidhi Sarvaiya