2016-10-11 12 views
1

Meteorの階層を持つロールとグループを処理するための、信頼性の高い優れた方法を探しています。私はalanning:rolesパッケージに結婚していないので、これらの要求を容易に満たすパッケージのためにそれを喜んで交換します。流星群のロール/グループを持つ階層階層パッケージ

需要:

私はサブグループの「無限」量を作成できるようにする必要があります。ユーザー(Bob、Jim、Anna、Daisy、Tom、Jerry)とチーム(チームA)を持っていて、メンバーの一部がそれらの下のユーザーを制御できるようにしたいとします。

  • ボブ(チームA)
    • ジム(ディビジョン1)
      • デイジー(マネージャー)
    • アンナ:だから、最高の私は、次のツリーを提示し、この考え方を説明するために、 (Division 2)
      • Tom(スレーブドライバ)
        • ジェリー(ユーザー)

だから、これを処理する最善の方法のための私の現在の考えは、ツリーがこれらの役割として表現されるカスケーディング・グループとグループを割り当てることです/グループの組み合わせ:

  • bob:roles:["role"]、グループ:team_a
  • ジム:ロール:[ "役割"]、グループ:team_a:division_1
  • デイジー:ロール:[ "役割"]、グループ:team_a:division_1:マネージャ
  • アンナ:ロール:[ "役割"]グループ:team_a:division_2
  • トム:役割:[ "役割"]、グループ:team_a:division_2:slave_drivers
  • ジェリー:役割:[ "役割"]、グループ:team_a:division_2:slave_drivers:ユーザー

私はこの構造の巨大なファンではありません。それはグループのアイデアを非常によくサポートしているだけでなく、私がすでに目にすることができる他の多くの問題をサポートしていないからです。

  • ボブ:役割:しかし、私は考えることができる唯一の代替は、このようなものになるだろう[
    • {[ "役割"]、team_a}、
    • {[ "役割"]、 team_a:division_1}、
    • {[ "役割"]、team_a:division_1:マネージャ}、
    • {[ "役割"]、team_a:division_2}、
    • {[ "役割"]、team_a:division_2 :slave_drivers}、
    • {[ "役割"]、team_a:division_2:slave_drivers:ユーザー}]
  • ジェリー:ロール:[
    • {[ "役割"]、team_a:division_2:slave_drivers:ユーザー}]

これは意味がありますか?サブグループを作成するたびに、すべてのユーザーのアクセス許可を更新する必要があるようです。そして、定義されたグループの量がかなり急速に増えるかもしれないようです。

私がオフになっていて、これをやる方がはるかに簡単な方法がある場合は、正しい方向を指摘していただければ幸いです。これらのルートを使って、私は役割のパッケージをそうするように設計されていないものにしようとしているように感じます。ありがとうございました。

+1

これらのリレーションシップを格納するためには階層的なデータ構造が必要なようで、ツリービューコントロールはおそらくそれらを維持するのに適しています。この階層を参照する必要があるパーミッションの管理に関して、私が流星で知っていることはそれを処理することはできません。私はあなたが他人との相対的な人の許可を照会し、はい/いいえの回答を与える簡単な方法を提供する必要があると思います – Mikkel

+0

hmm興味深い、私はまだこれのための基礎としてatleast役割パッケージが好きです。うまくいけば誰かがここに来て自分でそれをやらなければならないのをやめさせてもらえますが、現時点で私のベストチャンスは、パッケージが提供している役割を踏襲して、おそらく "チーム"というカスケード権限下方に –

+0

それは何も言わなかったふわふわでした。本質的には、まあ、私は役割がどのようにデータベースに座って変更する必要があるように聞こえる –

答えて

0

このタイプの権限管理に興味がある人は、私がまとめたbgromadzki:meteor-teamsパッケージをチェックしてみてください。 https://github.com/BRyeGmoney/meteor-teams

私はロールパッケージと同様の前提を使用しましたが、パッケージの焦点をロールからグループに変更しました(ロールではなくチームコレクションのように)グループはあまりにも緩やかなようだった。私はもう少し作業を進めていくつもりです。また、フィードバックがあり、必要なものについて何か提案していただければ幸いです。