1

いくつかのコントローラーコードとフォームを使用して、管理名前空間に CRUD インターフェイスを作成したユーザーモデルがあります。ユーザー モデルには、最初はユーザー名の電子メール パスワード フィールドがあります。

次に、同じユーザー モデルで動作するようにデバイスをセットアップします。問題は、devise がパスワードを暗号化し、encrypted_pa​​ssword フィールドに入れることです。そのため、私が作成したパスワードと CRUD インターフェイスは今では役に立ちません。管理者にユーザーテーブルで CRUD 機能を持たせたいと同時に、それを操作するように工夫したいと考えています。

考えられる解決策は次のとおりです。1) デバイス コントローラのメソッドを呼び出して、コントローラ内で暗号化されたパスワードを処理するユーザーを追加します。それが可能かどうかはわかりません。

2) 自分でパスワードを暗号化し、デバイスと同じフィールドに保存します。いくつかの投稿を見つけましたが、どれも機能しませんでした。カスタム暗号化方式を追加しようとしましたが、うまくいきませんでした。

誰でもこれで私を助けてくれますか?

4

1 に答える 1

0

電子メール、パスワード、およびユーザー名を新しいユーザーオブジェクトに割り当ててユーザーレコードを保存しましたが、問題はこれらの属性だけであり、レコードをユーザーモデルに保存しますが、パスワードは暗号化されず、encrypted_pa​​ssword フィールドは空で、認証モデルで使用します.

問題をhttps://twitter.com/coder_hspsに伝えたところ、コントローラーの password_confirmation 属性に同じパスワードを割り当てることを提案され、うまくいきました

ありがとう

于 2012-09-30T16:36:41.563 に答える