在Devise rails中注册之前的条件

时间:2018-10-24 15:49:10

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

我正在Rails应用程序中为用户使用Devise。

在我的用户模型中,我有 randomID 列,此列是每个用户的uquinesse 我在用户注册时生成了

在用户模型中,我也有 addBY ,因为用户需要另一个用户的 randomID 进行注册

所以我将在所有用户之间具有树关系

一切正常,但是我的缺点是,如果用户输入错误的 randomID , 我必须检查数据库中是否存在

如果该值存在,则让用户注册

否则我显示一条消息错误

任何想法

1 个答案:

答案 0 :(得分:1)

在您执行create操作之前,只需调用一个函数来检查值是否存在。

在您的users_controller.rb中:

class UsersController < ApplicationController
  before_action :check_for_token, only: :create

  ...

  private

  def check_for_token
    redirect_to root_path unless User.exists?(:randomID => params[:addBY])
  end
end
相关问题