問題タブ [sorcery]

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 投票する
2 に答える
405 参照

ruby-on-rails - ソーサリーの問題

私は複数の問題に遭遇しています..

1.Railsサーバーを起動してアクセスするとhttp://0.0.0.0:3000/users、必要なすべてのユーザーが表示されますが、ログインボタンをクリックして資格情報を入力し、ログインしようとすると、このページが表示されます..

私はすでに new.html.erb ページにいるので混乱していますか?

2.sorcery と simple_form gem を使用して実行しました

しかし、現在、db/migrate に 2 つの移行ファイルがあり、user_sessions コントローラーと users コントローラーがあるため、どちらを保持する必要があるかわかりません。

私のソース コードはすべてhttps://bitbucket.org/jasonriddle/stubmoneyで入手できます。

どんな助けでも大歓迎です。

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

ruby-on-rails - ソーサリーのスペックが本当に遅い

Sorceryを使用するようにアプリケーションを設定しようとしています。ユーザーモデルに追加authenticates_with_sorcery!すると、スペックの実行が非常に遅くなります(1秒に約1回)。Sorceryでこれを引き起こす可能性のある何らかの構成またはセットアップはありますか?

これが私のユーザーモデルです:

と私のユーザーファクトリ:

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

ruby-on-rails - Rails and Sorcery へのユーザー登録後、前のページにリダイレクト

ユーザー認証にソーサリーを使用する小さなRails 3アプリがあります。認証されていないユーザーがページ「A」にアクセスすると、ログインまたは登録しない限り、ページの一部の表示が制限されます。

「登録」リンクを選択すると、別の登録ページが表示されます。登録が成功すると、ログインしてホームページにリダイレクトされます。ページ「A」に戻るように指示する必要があります。

これは私の User.create コントローラです:

私はredirect_back_or_to魔法が起こるべき場所であると仮定していますが、何かが欠けています.現在、これはホームページにリダイレクトするだけです. これを行う簡単な方法はありますか?現在のページ パラメータをコントローラなどに渡す必要がありますか?

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

javascript - ソーサリー/カピバラ::js=>trueでログインできません

私はしばらくカピバラを使っていますが、魔術は初めてです。Capybaraの:js => true機能なしで仕様を実行すると正常にログインできますが、仕様で:js => trueを指定しようとすると、ユーザー名/パスワードが見つからないという非常に奇妙な問題があります。

認証マクロは次のとおりです。

これは、次のような仕様で呼び出されます。

上記のコードは正常に機能します。ただし、シナリオの仕様を(この場合)から変更すると

'不正なユーザー名/パスワード'の組み合わせでログインが失敗します。文字通り、唯一の変更は:js=>trueです。デフォルトのcapybarajavascriptドライバーを使用しています。(Firefoxをロードします)

ここで何が起こっているのでしょうか?私は完全に困惑しています。私はCapybara2.0.1、Sorcery0.7.13を使用しています。サインインページにはjavascriptがなく、[サインイン]をクリックする前のsave_and_open_pageは、ユーザー名/パスワードフィールドに正しい詳細が入力されていることを確認します。どんな提案も本当にありがたいです-私は途方に暮れています。

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

ruby-on-rails - Sorcerygemを使用したカスタムパラメータを使用したFacebookoauthログイン

カスタムパラメータをFacebookoauthurlに渡して、コールバックに戻そうとしています。可能であることはわかっていますが、Sorcery gemを使用しており、パラメーターを動的に設定する必要があります。つまり、現在のように、sorcery.rb初期化ファイルで定義することはできません。

コントローラで定義する必要がありますが、この宝石でどのように定義できますか?

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

ruby-on-rails - サブドメインで session_store を設定すると、Twitter のログインが妨げられます。なんで?

開発環境で。Twitter API では、localhost やその他のホスト名ではなく、0.0.0.0 からログインする必要があります。

ただし、サブドメインを介してローカル アプリもテストしています。でsession_store.rb

Twitter にログインしようとするたびに、401 Unauthorized. を設定:domain => '0.0.0.0'すると、うまく Twitter にログインできます。持つ:

部品がなく:domain =>ても問題なく Twitter にログインできます。

を設定すると Twitter のログイン:domainが妨げられるのはなぜですか?session_store.rb

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

ruby-on-rails - Sorcery と Authlogic の違いは何ですか?

Rails Sorcery authentication gem と Authlogic の最大の違いは何ですか。どちらも独自のコントローラーとビューを作成できます。Ryan Bates は Authlogic よりも Sorcery が好きだと語っていますが、その理由が理解できません。これらについてどう思いますか、つまり、それらの最大の違いは何ですか?

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

ruby-on-rails - Railsコントローラーのparams属性が定義されていません

答えた。投稿の終わりを参照してください。

私は主にJava開発者であり、RubyonRailsはかなり初めてです。railstutorial.orgのチュートリアルを無事に完了しました。だから私はこれを一度動作させました。チュートリアルを2回実行し始めたときに問題が発生しましたが、今回は認証をSorcerygemに置き換えようとしています。そのための私の主な参照は、railscasts.orgのエピソード#283でした。一部は機能していましたが、サインインしようとすると、次のようなエラーが発生します。

SessionsController#createのActiveRecord :: PreparedStatementInvalid

[:email] =:loginの:emailの値がありません

これは非常に具体的ですが、多くの場所に現れる非常に一般的な単語であるため、検索するのは困難でした。元のチュートリアルを機能させたときと同じようにやっていると思います。以下は私のviews/sessions / new.html.erbで、元のチュートリアルとほぼ同じです。

そして、これが私のsessions_controller.rbのcreateメソッドです。これは、魔術のためにチュートリアルとは少し異なりますが、params参照がチュートリアルと同じように機能しない理由はわかりません。

Railsキャストはparams[:email]を使用しますが、これは彼がform_forではなくform_tagを使用し、使用するparamを変更したためです。

私はここで本当に迷子になっています。チュートリアルと同じように機能しない理由がわかりません。どんな助けでも大歓迎です。追加情報を提供する必要があるかどうかをお知らせください。ありがとう。

編集:
上記の完全なエラーを追加しました。ソーサリーのログイン方法や私のデータベースに問題があるに違いありません。パラメータは正常に処理されています。これが完全なスタックトレースです(コードの私の部分に戻ります。それを超えると本当に長すぎます)。

スタックトレース:

activerecord(3.2.11)lib / active_record / sanitization.rb:141:in `block in replace_named_bind_variables '

activerecord(3.2.11)lib / active_record / sanitization.rb:135:in `gsub '

activerecord(3.2.11)lib / active_record / sanitization.rb:135:in `replace_named_bind_variables '

activerecord(3.2.11)lib / active_record / sanitization.rb:115:in `sanitize_sql_array '

activerecord(3.2.11)lib / active_record / sanitization.rb:28:in `sanitize_sql_for_conditions '

activerecord(3.2.11)lib / active_record / ratio / query_methods.rb:324:in `build_where '

activerecord(3.2.11)lib / active_record / ratio / query_methods.rb:136:in `where'

activerecord(3.2.11)lib / active_record / querying.rb:9:in `where'

ソーサリー(0.7.13)lib / sorcery / model / adapters / active_record.rb:32:in `find_by_credentials '

ソーサリー(0.7.13)lib / sorcery / model.rb:108:in `authenticate '

ソーサリー(0.7.13)lib / sorcery / controller.rb:33:in `login '

app / controllers / sessions_controller.rb:8:in `create '

私は自分の質問にすぐに答えるには新しすぎると思います。自分で修正しました:

sorcery.rbで、私は持っていました:

user.username_attribute_names ='[:email]'

どうやら、引用符はそこにあるべきではありません。ファイル内のコメントに戸惑いました。その変更を行った後、変更を有効にするためにサーバーを再起動する必要がありました。

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

ruby-on-rails - リダイレクトしてログインするか、ログインしてリダイレクトしますか?

簡単な質問です。何が好まれるのか、その理由は何ですか、それともまったく問題ではありませんか? ソーサリー ジェムの例:

また

場所を飛ばすだけで、1行はそれほど重要ではないかもしれませんが、より良い、より安全な、なぜ、またはそれほど重要ではないのですか?

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

ruby-on-rails - リダイレクトを使用し、複数回の場合

私の質問は実際にはかなり単純です。ユーザーがログインしているかどうかを確認する作成アクションを作成し、ユーザーがリンクなどを持っているインデックスページをレンダリングする代わりに、ダッシュボードにリダイレクトされるかどうかを確認するにはどうすればよいですか。にサインアップします。また、以下のコードが機能しないのはなぜですか。

クラスUsersController<ApplicationController