4

私は現在、いくつかの本やチュートリアルに従ってRoRを使用していますが、非常にうまく機能しています。しかし、今はリソースが見つからないものを実装する必要があり、それについて少し助けが必要です。これが私がやりたいことです:私は人々がログインして物事を見ることができるアプリケーションを持っているので、私はusersと呼ばれるデータベーステーブルを持っています、それはかなり自明です。さらに、テーブルuser_rightsがあり、それぞれにID、名前、説明があります。これで、各ユーザーが複数の権限を持つことができ、アプリケーションのさまざまな部分にアクセスできるようになります。したがって:

class User < ActiveRecord::Base
  attr_accessible :name, :password_digest, :password, :account_nr, :password_confirmation, :email
  has_many :scope
  validates :name, presence: true, uniqueness: true
  validates :account_nr, presence: true
  validates :email, :presence => true
  has_secure_password
end

と:

class Scope < ActiveRecord::Base
  attr_accessible :name, :description
end

私はbelongs_to-relationshipを持ちたくありません。ユーザー権限を持つ小さなテーブルが必要で、各ユーザーにいくつかの権限を与えます。しかし、残念ながら、私はどのように進めるのか全くわかりません!誰かが私にいくつかのヒントを教えてもらえますか?

4

2 に答える 2

5

次のように、多対多の関連付けが必要なようです。ユーザーは複数の権利を持ち、1つの権利を多くのユーザーに割り当てることができます。

于 2012-10-12T14:41:08.613 に答える
0

あなたがやろうとしていることは承認と呼ばれていると思います(あなたはすでに知っているかもしれません)。カスタムソリューションを作成している場合は、車輪の再発明を行う可能性が高いと思います。

RailsCastsの人が書いたRails認証プラグインであるCanCanを使って、ニーズに合っているかどうかを確認することをお勧めします。

于 2012-10-12T15:00:01.357 に答える