2016-04-25 3 views
-1

これは既に質問されている質問と重複しているかもしれませんが、私の条件に合ったものはまだ見つかりませんでした。Rails:異なるアクセス権を持つ他のユーザーを作成することができます

deviseを使用して自分自身を登録しているユーザー(管理者ではない)がいるシステムを開発しています。私が望むのは、このユーザーが異なるユーザーを作成し、それらに別のアクセス許可のセットを提供できるようにすることです(あらかじめ定義されたアクセス許可とすることができないため、私は気づいた限りcancanを使用できません)。もっと明確にするために、これは私がまだ考え出したテーブル構造です。私がここで間違った道を行くなら、私を案内してください。

USER:

id, 
name, 
other-details 

許諾

id, 
name, (name of the section such as gallery, report or users) 
create, 
edit, 
view, 
user_id (the user whose permissions are defined here) 
ここ

createeditviewは、ユーザーが持っているであろうとパーミッションです。 editが真の場合、彼はその特定のsectionを編集することができます。これがはっきりしない場合は申し訳ありません。私はヨハンの答え(最後のもの)Database schema for ACL私のシナリオにマッチしかし、私は正しい方法がわからないが見つかりました。また、私はそこに記載されたSETを実装する方法がわかりません。

Thanx事前に。また、必要に応じて詳細をお尋ねください。私は、この方法がどれほど正しいかについては漠然としている。

P.S:Newbie in Rails Here

+0

の権限を使用してすべての役割を追加する必要がありdownvoterねえ、あなたはこの質問でいただきましたので、間違った教えてくださいだろうか? – Aakanksha

答えて

0

gem devise、cancancan &を使用してください。 参照先はhttps://github.com/RolifyCommunity/rolify/wiki/Devise---CanCanCan---rolify-Tutorialです。

あなたはability.rbファイル

+0

これは私が欲しくないものです。私が理解している限り、私はあらかじめ定義された役割を必要としますが、私のシステムにはそれがありません。ユーザーを除いて、新しいユーザーを編集または作成する権限を確実に持つサブユーザーはいません。私はここで明確ではない場合は謝罪します。 – Aakanksha

+0

rolifyを使用してロールを作成する場合は問題ありませんが、上記のソリューションが必要な場合は、ユーザモデルのフィールドに「role」というフィールドを追加して、サインアップしてください.https://github.com/plataformatec/devise/wiki/How -To:-Allow-users-to-sign-in-username-or-their-username-or-email-address –

+0

私はdeviesのUserテーブルにフィールドを追加しても問題ありません。その楽しいものと私はそれを把握している。または私は持っていると思う。私はあなたが深く示唆した答えを探します。その間に私は他の提案も待っています。 Thanx – Aakanksha

関連する問題