ユーザーは次のようなURLであなたのサイトにアクセスします:/ controller/action /:id right?ユーザーはIDを変更することができ、承認されていない別のリソースを表示してはなりません。どのようにこれを達成するには、あなたのコントローラ上で、ユーザーがアクセスを許可されているリソースだけを返します。例えば
、あなたがdeviseを使用していることとします
class AController < ApplicationController
def index
@resouces = current_user.find_all_by_id params[:id]
end
end
この方法で、ユーザは自分がアクセス権を持っていない何かをアクセスしようとすると、彼はエラーになります。
希望があれば、私に知らせてください、私は詳しく説明しようとします。
についてCURRENT_USERは、はい、それは現在ログインしているユーザーことになっている、それは工夫である必要はありません、あなたはあなた自身のセッション処理ロジックを実装して、取得するために、ヘルパーメソッドを作成することができます現在ログインしているユーザーあなたがあなた自身のセッション処理ロジックを実装したくない場合は、を工夫使用について
、あなたのような機能をしたい場合はプラス:
- は私に
- すでに作成されたビューを思い出すことができます完全にカスタマイズする
- 認証
- 承認
- パスワード暗号化
- 工夫その後
(詳細についてはdocsを見てください)、より多くのは、行くには良い方法です。
また、可能であれば、学習の練習として、自分の認証と承認のレイヤーを実装することは、常にお勧めです。後悔はありません。
敬具
エマニュエル・デルガド
あなたが工夫使用しての値に文章や2を追加することができます。 deviseがまったく使用されていないように見せたコード。 – mliebelt
彼はcurrent_userを使用して、current_userリソースのみを取得しています。 – cicloon
私の元の投稿にいくつかのメモを追加しました。私がさらに精巧にしてほしい場合はお知らせください。宜しくお願いします。 ED。 – chischaschos