состояние перед регистрацией в рельсах Devise - PullRequest
0 голосов
/ 24 октября 2018

Я использую Devise для моих пользователей в моем приложении rails.

В моей пользовательской модели у меня есть столбец randomID , этот столбец подходит для каждого пользователя, и я генерирую его, когда пользователь регистрируется

В пользовательской модели у меня естьтакже addBY , я использую это, потому что пользователю нужен randomID другого пользователя для регистрации

Так что у меня будет древовидная связь между всеми пользователями

все работает нормально, но моя проблема сейчас в том, что если пользователь введет неправильный randomID , я должен проверить, существует ли он в моей БАЗЕ ДАННЫХ или нет

, если значение существует, я позволяю пользователю подписать-up

иначе я отображаю сообщение об ошибке

любые идеи

1 Ответ

0 голосов
/ 24 октября 2018

Просто вызовите функцию, чтобы проверить существование значения перед вашим 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
...