問題タブ [devise]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
4808 参照

ruby-on-rails - Devise Authentication を既存のユーザー構造に組み込みますか?

50 を超える列を持つユーザー テーブルを備えた、完全に機能する認証システムがあります。シンプルですが、ソルトでハッシュ暗号化を行い、ユーザー名の代わりに電子メールを使用し、管理者を持つ 2 種類のユーザーも持っています。

電子メールの検証、パスワードの忘れ、トークンの記憶などの追加部分を強化するために、Devise 認証をアプリケーションに組み込みたいと考えています。既存のユーザー構造に工夫します。私のユーザーモデルの必須フィールドは次のとおりです。

参考までに、移行の Devise フィールドは次のとおりです。

それは最終的にスキーマ内のこれらの実際のフィールドに変わります。

皆さんは何をお勧めしますか?移行から email、hashed_pa​​ssword、salt を削除し、5 つの Devise 移行フィールドに入力するだけで問題ありませんか?それとも何か他のことをする必要がありますか?

編集:

私はこれを自分で試み始めましたが、すでにいくつかの問題に遭遇しています。上に示したデバイス移行フィールドを既存のユーザー モデルに追加しました。シード ファイルを実行すると、次の Postgresql エラーが表示されます。

私のシードファイル:

ユーザーモデル:

スタック トレースは、電子メールが何らかの理由で残りの変数で明らかにフィードされていないことを示しています...シード ファイル内の他のすべてが実際のクエリに表示されますが、電子メールは何らかの理由で '' です。それは明示的に定義されています.auth

0 投票する
4 に答える
4745 参照

ruby-on-rails - Warden + Devise Authentication Gems for Ruby を使用した Twitter Oauth 戦略

Warden (別の auth gem) に基づく Ruby の認証 gem である Devise は、認証戦略として Twitter Oauth をサポートしていませんが、Warden はサポートしています。Devise 内で Warden Twitter Oauth 戦略を使用する方法はありますが、私にはわかりません。デバイス構成ファイルで次のブロックを使用しています。

しかし、私はあらゆる種類のエラーメッセージを受け取り続けています。これを機能させる方法を知っている人はいますか?ここでやるべきことは他にもあると思います (Warden と通信するための新しいリンク/ルートを構成する、Devise User モデルに属性を追加するなど) が、それらが何であるかわかりません。助けてください。

0 投票する
11 に答える
29427 参照

ruby-on-rails - RoR Devise: ユーザー名またはメールアドレスでサインイン

ユーザーがメールアドレスまたはユーザー名でログインできるようにする最善の方法は何ですか? 認証に warden + devise を使用しています。おそらくそれを行うのはそれほど難しくないと思いますが、必要なものすべてをどこに置くかについて、ここでアドバイスが必要だと思います. おそらく、デバイスはすでにこの機能を提供していますか? config/initializers/devise.rb のように、次のように記述します。

サインインのためにユーザー名と電子メールの両方を要求するには。ビューで次のように見えるはずです。

0 投票する
1 に答える
2698 参照

ruby-on-rails - パーシャルを使用した Rails カスタム プラグイン/Gem

ビューのヘルパーを提供する宝石を書いています。ヘルパー経由で挿入したい HTML は複雑なので、_partial.html.erb ファイルに書きたいと思います。アプリケーションの load_path に含まれる gem のビュー パスを取得するにはどうすればよいですか?

注: このようなことを行う唯一の gem は Devise です。ビューが見つからない場合、Rails は (私のマシンでは) 次のようなロード パスを出力します。

Devise はどのようにそれを行いますか?

私の宝石: http://github.com/jrmurad/SortableNestedSet デバイスの宝石: + http://+github.com/plataformatec/devise

0 投票する
0 に答える
2098 参照

ruby-on-rails - Devise で追加の関連モデルを作成する

私は、Devise を使用して新しいプロジェクトの実装を開始しました。これは、ユーザーを処理するのに非常に優れています。ただし、ユーザーがサインアップすると、モデルを作成するだけでなく、会社を表すUser関連モデルも作成する必要があります。Account追加のユーザーもbelongs_toこのAccountモデルになります。

かなり一般的なパターンのように思えますが、Devise でこれに対するフックを見つけることができないようです。これのベストプラクティスは何ですか?

Accountまた、sign_up フォームで提供する必要があるフィールドがいくつかあることにも言及する必要があります。そのため、Userモデルでは次のようになります。

..会社名の取得方法がわからないため。

0 投票する
1 に答える
560 参照

ruby-on-rails - acl9 と Devise はうまく連携していないようです

ACL9 によってアクセスが制御されるユーザー モデルがあります。

UsersController:

ApplicationController:

サインイン ページの URL を入力しても問題ありませんhttp://localhost:3000/users/sign_inが、たとえば、最初にユーザー ページを入力すると、上記のロジックによって自動的にサインイン ページにリダイレクトされることが予想されるため、問題が発生します。

http://localhost:3000/users/1=>無限リダイレクト地獄。users/1にリダイレクトする代わりに、再び にリダイレクトしようとしusers/sign_inます。

何がうまくいかないのかについて意見を持っている人はいますか?

0 投票する
2 に答える
2130 参照

ruby-on-rails - Deviseを使用して確認する必要があるサインアップ確認メールを送信する

Railsアプリでユーザー認証を処理するためにdeviseを使用しています。ユーザーがサインアップして即座にログインし、確認メールを受信できるようにしたいと考えています。

Devise には、メールを送信する Confirmable モジュールがありますが、ユーザーはメール アプリケーションを開いてメールを見つけ、リンクをクリックする必要があります。リンクをクリックすると、再びサイトに移動します。

ユーザーがサインアップしたことを確認するメールをユーザーに送信したいのですが、それだけです。

devise がこれを行う方法はありますか、それとも ActionMailer を自分で処理することを解決する必要がありますか (もしそうなら、簡単で複雑でない例はありますか)?

どうもありがとう!
-トニー

0 投票する
1 に答える
7798 参照

ruby-on-rails - Deviseを使用して既存のサイトに確認可能なモジュールを追加する

Webアプリにdeviseを使用していて、確認可能なモジュールをサイトに追加したいと思いました。ただし、confirmation_tokenが生成されないため、ユーザーはサインインできません。[確認の指示を受け取りませんでしたか?]をクリックすると、リンクトークンはまだ生成されていません。

確認メールはこのリンクを生成するだけです(URLにトークンがないことに注意してください):

これを機能させるための最良の方法は何ですか?

どうもありがとう、
トニー

0 投票する
1 に答える
1176 参照

ruby-on-rails-3 - DoubleRenderErrorを工夫する

アプリケーションスタック: Rails3、CanCan、Devise、Shoulda

ネストされたリソースがいくつかあり、Shoulda でテストしたいのですが、次の DoubleRenderError が発生します。

このテストでは、認証されていないユーザーがネストされたリソースにアクセスできるかどうかを確認します (アクセスすべきではありません)。

試験方法

コントローラーの方法:

認証されたユーザーを使用したすべてのテストは正常に機能します-誰かが私にヒントを与えることができます. どうもありがとう!ベン

0 投票する
2 に答える
4244 参照

ruby-on-rails - deviseのdatabase_authenticatableの「ストレッチ」とはどういう意味ですか?

config / initializers / devise.rbに、「config.stretches」という構成があります。

どういう意味かわかりませんstretches。パスワードを「再暗号化」したいときだと書いてあります。なぜ、私たちのパスワードは再暗号化されるのですか?そして、なぜ「時間」を指定する必要があるのですか?