問題タブ [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 に答える
159 参照

ruby-on-rails - ソーサリーでのユーザー アクセスの制限


私は魔法のすべてが機能するレールアプリを持っています。
問題は、次のようなユーザーを編集するときです:
http://localhost:3000/users/1/edit
その作業はうまくいきますが、ユーザーIDを2または3に変更すると..
すべてのユーザーデータを更新できます
どうすれば制限できますか現在のユーザーがログインしたユーザーである場合にのみ、ページを編集します

ここに私のコントローラがあります:

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

ruby-on-rails - アプリケーション内で ActionController::Base を拡張する

Devise や Sorcery などのプラグインがメソッドを公開するのと同じ方法で、コントローラーとビューにメソッドを公開したいと思いますcurrent_user。実際、私はまさにこの機能に便乗しています。しかし、この魔法の正しい構文を推測しようとする私の試みはうまくいきませんでした。これが私がこれまでに持っているものです...

コントローラー アクションまたはビューから呼び出そうとするとcurrent_username、通常の未定義エラーが発生します。

このメソッドの目的はアプリ固有のものであり、プラグインを作成する必要はありません。これについて言及したのは、これまで掘り下げた参考資料では、Rails エンジン/プラグインの構築の観点からこの問題についてのみ議論されているためです。もちろん、この時点で私のコードはまさにそれを実行しますが、まだ機能しません。oO

Rails 4.2 の実行

更新:内部のものを上下に移動することで、機能を機能させることができましRails::Engineた。

しかし、なぜそれが必要だったのかわかりません。Rails エンジンは、これらの拡張機能で初期化されているはずActionController::Baseです。私は何が欠けていますか?

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

ruby-on-rails - 魔術から工夫への移行

タイトルが示すように、現在認証ライブラリのソーサリーにあるプロジェクトがあります。クライアントの開発者が使用したいので、ユーザー データベースを devise に移行したいと考えています。

どちらのライブラリも同様の暗号化方法を使用していることは理解していますが、その手順についてはよくわかりません。

現在、レールの最新バージョンにあります。

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

ruby-on-rails - CanCan: ユーザーが自分のものを表示できない

Sorcery と Cancan を使用して単純なロール ベースの認証を作成しました。このデータベースには、ROLE という名前の列があり、ユーザーを登録するときに管理者または通常にすることができます。

Relato は、「レポート」を作成できる足場であり、通常のユーザーは自分で作成したレポートのみを表示し、他の操作 (更新、破棄) も行うことができます。

私の能力.rb

コントロール保護の必要はありません

私のビューindex.html.erbでは、私が入れたすべての「レポート」がリストされています

しかし、それは機能しません。ユーザーは自分のレポートを見ることができません。管理者アカウントを使用すると、すべて問題ありません。

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

ruby-on-rails - 魔術におけるメーラーの定義

私は魔法を使ってレールアプリを構築しています。users/new に移動すると、「To use reset_password submodule, you must define a mailer (config.reset_password_mailer = YourMailerClass)」という引数エラーが表示されます。

config/initializers/sorcery.rb に移動してコードを含めまし user.reset_password_mailer = UserMailerたが、まだエラーが発生しています。UserMailer クラス内で、reset_password_email メソッドを定義しました

sorcery.rbファイルを更新しました

同じエラー メッセージが引き続き表示されます。

ユーザーコントローラーで:

そして、私のユーザーモデルは次のとおりです。

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

ruby-on-rails - ソーサリーでログイン後、属性を更新できない

auth_tokenユーザーがログインするたびに新しいトークンを生成したいフィールドがあります。だから私はその行を書きます(2)が、うまくいきません。ユーザーは正常にログインしますが、フィールドauth_tokenは更新されません。

誰でもこれを説明できますか?

PS私はSorcerygemを使用しました