PHPとMySQLでメニューシステムを作成しています。いくつかの異なるメニューを用意し、各メニューに一連のメニュー項目を接続します。
サイトでは、別のユーザー権限も持っています。一部のユーザーはすべてのメニューアイテムを表示でき、一部のアイテムは一部のユーザーから非表示になっています。将来、より多くの種類のユーザーを簡単に追加できるように、権限をクリーンな方法で処理する方法に興味があります。
これまでのところ、次のようなものです。
-------------------
|Menus
-------------------
|id| |display name|
-------------------
----------------------------------------------------------
|Menu items
----------------------------------------------------------
|id| |menu_id| |label| |link| |parent| |sort| |permission|
----------------------------------------------------------
permission
列は、現在のユーザーのアクセス許可IDと照合できるコンマ区切りの文字列のいずれかであると考えています。また、現在存在する権限のすべての可能な組み合わせを定義する他のいくつかのテーブルへの参照である可能性もあります。
1つの解決策は、複数のメニュー項目を単純に格納することでもありますが、唯一の違いは許可ですが、これはストレージの重複を引き起こし、おそらく管理が面倒になります。
これをどのように構成するか、そしてクリーンでダイナミックで無愛想なものと見なすことができるものについての考えを聞いてみたいです。
ありがとう。