各レベルで異なるレベルのアクセス権を持つ115レベルの階層を作成する方法。
シナリオは、1つのルートノードを持つ階層(ツリー)を作成し、そのノードの下に3つのサブノードが存在するようにしたいのです。これらの3つのサブノードのそれぞれの下に、さらに3つのサブノードが存在する。このようにして、階層は115レベルまで拡張されます。ルートノードには、階層の終わりまでその下にあるすべてのノードのデータを表示するアクセス権があるという制約があります。ツリー内の他のすべてのサブノードには、その下にあるサブノードのデータと、その下に来る後続のサブノードのデータを階層の終わりまで表示するアクセス権が与えられます。php:各レベルで異なるレベルのアクセス権を持つ115レベルの階層を作る方法。
1
A
答えて
1
おそらくこのような複雑な構造をデータベースに反映させたいと思うでしょうから、私の提案された解決法は言語に依存しません。
よう
のParentIDは上位に参照する外部キーであるTable Nodes: ID, ParentID, Name, Content
ようなテーブルを作成します。ルートにはParentID = nullがあります。
別のテーブルあなたはノードへのアクセス権を与える
Table Node_Rights: NodeID, UserID
を作成します。
これで、すべての階層をループすることでユーザーのアクセス権を明らかにすることができました。これにより、多くのSQLクエリが効果的に使用されます。私はこれらのクエリを1回またはユーザ/アクセス権が変更されるたびに実行し、その結果を別のテーブルに保存する必要があると思います。次のようになります。
Table Transivite_Node_Rights: NodeID, UserID
この表は、このような大きな構造を実現するためのキャッシュです。
関連する問題
- 1. SQL - 各レベルでレコードを持つ再帰的なツリー階層
- 2. mysql:基本レベルの階層レベルでLIMITを使用する方法は?
- 3. SQL:nレベルの階層構造
- 4. ActiveRecordと2レベルの階層
- 5. Filebeat:ディレクトリ階層の2つのレベルの
- 6. 階層レベルでオントロジークラスを取得する
- 7. 動的レベルのソートキーを持つ汎用の階層型DataViewクラス
- 8. 要素のDOM階層レベルを取得する(カウントの子孫レベル)
- 9. 階層の3レベルのトップ水平ナビゲーションバー
- 10. データ階層の3つのレベルをバインドする
- 11. gitリポジトリを階層レベルに移動
- 12. ブートストラップスクロール機能付きの3レベル階層?
- 13. shutil.rmtree(Pythonの混合階層レベル)
- 14. SQL階層テーブル:レベルをジャンプする方法
- 15. TreeViewControlに階層レベルを設定する方法は?
- 16. 複数の階層レベルで値を持つ行を並べ替える
- 17. 親子階層の深さレベルを見つける
- 18. 階層内の異なるレベルのCSS浮動小数点を避ける
- 19. haskellの異なるレベルの相互作用レベル
- 20. Androidでレベル2のアクセス権を取得
- 21. 異なるレベルの階層的クラスタリングからラベルを取得する
- 22. OBIEE親子階層のデフォルト拡張レベルを作成する方法
- 23. React.js - コンポーネントの階層の異なるレベルから使用DOM要素を
- 24. SQL階層クエリ最大10レベル
- 25. Sql階層IDレベル別並べ替え
- 26. 異なるレベルの計画(cytoscape.js)でパイを作る方法は?
- 27. いくつかのレベルの親/子階層を持つSQL反復
- 28. どのように15レベルの深さで15レベルのメンバーを数えるかPHPの各レベル
- 29. 異なるレベルの特異性を持つOCamlタイプ
- 30. ユーザー制限レベルで異なる内容をトリガーするレベル
聖なる牛、あなたは何のために多くの特権を必要としますか? o_O – Amber