Używam OmniAuth i Devise do uwierzytelniania użytkowników. Chciałbym, aby użytkownicy, którzy zarejestrowali się za pomocą dostawców OmniAuth, mogli ustawić opcjonalne hasło (wymagane do uwierzytelniania API), ale korzystam z niego na ścianie.OmniAuth i Devise, ustawianie opcjonalnych haseł
Jeśli użytkownik tworzy konto poprzez OmniAuth i próbuje ustawić hasło to pojawia się następujący błąd:
BCrypt::Errors::InvalidHash in RegistrationsController#update
wierzę, to dlatego, że hasło jest puste. Co to jest dobry sposób? Myślałem o generowaniu losowego hasła, ale problem z tym podejściem polega na tym, że użytkownik musi znać aktualne hasło w celu edycji ustawień.
Edit: Spojrzałem na allowing the user to change settings without requiring a current password i to co chciałbym robić tylko, jeśli użytkownik nie ma hasła początkowo.
Tak, początkowo nie chciałem tego robić, ale skończyło się to w ten sposób. – David