Я просматриваю примеры активации электронной почты на рельсах, и большинство примеров имеют столбец для активации токена и подтверждены в их таблице пользователей. Я не уверен, но я не думаю, что это хорошая идея, так как при активации пользователя почти обе эти колонки кажутся пустой тратой. То, как я думал о активации, было иметь отдельную модель под названием Activation, которая была бы have_one :user
ассоциацией ONE-WAY, и я бы поставил роль пользователя на моем сайте как «PENDING» или что-то подобное. В таблице активации будет храниться токен активации для каждого пользователя. Затем будет сгенерирована ссылка с токеном активации, и пользователю будет отправлено электронное письмо, содержащее что-то вроде www.mysite.com/activate?token='some_really_long_hash'
. После нажатия ссылки на роль моего пользователя будет установлено значение «ЧЛЕН» или что-то подобное. Кажется ли это хорошей идеей? Я не могу представить себе никаких ловушек активации. Предложения? Комментарии?Email Activation in rails
ответ
Похоже, вы находитесь на начальных этапах реализации шаблона проектирования государственного аппарата в своей модели пользователя, и это не плохой подход к дизайну. Его просто сложнее, чем нужно большинству людей.
Я думаю, что State Machine Plugin может быть типом подхода, который вы хотите выполнить. Очевидно, это может быть больше, чем вы ищете, но подход будет таким же.
также проверить эти сообщения:
удачи!
Самый простой подход - создать случайный токен и сохранить его в столбце пользователя или записи участника. Он не должен быть «действительно длинным», 20 случайных символов будут достаточными, так как вероятность угадать настолько тонкая, что этого никогда не произойдет.
Обычно токен используется один раз и один раз для проверки пользователя, но если пользователь нажимает на письмо в следующий раз, это приятно, если он все еще перенаправляется обратно в свой профиль.
Обычно пользователь переключается на «проверенный» или что-то в своем роде, флаг состояния, хранящийся в отдельном столбце. Это сохраняет их первоначальный тип членства, который может быть одним из многих значений. Вот почему вы часто видите поля validated_at
или поля banned_until
.
- 1. cakephp Activation Email Sending slow
- 2. PHP Email Activation - Как избежать злоупотреблений?
- 3. Отправить Email asynchronous in rails
- 4. Удалить Joomla Activation Email для подтверждения электронной почты пользователя ... LOCALHOST
- 5. PHP Activation Logic
- 6. вручную Отправить Email Rails
- 7. iPhone in-app email
- 8. Email Composer in android
- 9. Email Placeholders in Array
- 10. Email Column IN SQL
- 11. Validating email in textarea
- 12. Jenkins email plug-in
- 13. Tibco & Windows Process Activation
- 14. Maven Build Profile Activation
- 15. java.lang.LinkageError: «javax/activation/DataHandler»
- 16. JRebel Activation IntelliJ
- 17. OSGI Bundle Lazy Activation
- 18. Rails email name label
- 19. Rails Email Parsing
- 20. Rails email to pdf
- 21. Rails 3.2: Devise: Email Name
- 22. Resent headers in MIME email
- 23. email div content in php
- 24. silverlight in html EMAIL body
- 25. Word Wrap in Email HTML
- 26. Rails ActionMailer error undefined email
- 27. UserMailerTest Ожидаемый «[email protected]» Актуально: [email protected]
- 28. Rails пользовательский пароль сброса email
- 29. Email составить просмотр в rails
- 30. Devise email only signup - rails