Я хочу задать вопрос пользователю и позволить ему зарегистрироваться только в том случае, если пользователь правильно ответит на мой вопрос. Я искал изобретать практические действия, но мой случай, похоже, не существует.
Есть ли идиоматический способ справиться с этой ситуацией?
Первой мыслью может быть использование javascript, но ответы хранятся в LDAP, и я ожидаю, что с ними будет легче справляться с рельсами.
Я также думал об отключении маршрута /users/sign_up
, вызывать действие (devise/registration#new
) вручную и отображать представление (devise/registration/new
).
Другим способом, который я могу придумать, является запуск фононного демона, который будет собирать идентификатор сеанса, где пользователь правильно ответил на вопросы. При правильном ответе пользователь будет перенаправлен на общедоступную страницу регистрации, которая будет проверять идентификатор сеанса пользователя с помощью демона.