各ページの各オブジェクトを調べた結果に基づいて、管理アプリケーションのナビゲーションメニューを動的にアセンブルするための最良の方法を見つけようとしています。これにより、ユーザーが使用できるオブジェクトを含むページのみが表示されます。メニューに表示されます!
簡単な例として、2つのユーザータイプがあるとします。秘書とマネージャー。更新可能な2つのフィールドを持つスタッフを管理するためのシンプルな管理ページがあります。「住所」と「生年月日」。通常、両方のフィールドには、SECRETARYが通常のCRUD操作を実行できるようにするアクセスレベルがあります。私たちの管理者はある日やって来て、「生年月日」にはMANAGERレベルのアクセスが必要であると判断しました。ページ上のそのフィールドを非表示にするか、読み取り専用にするのは簡単です。さて、突然、管理者は「アドレス」フィールドにもMANAGERレベルのアクセスが必要であると判断しました。このページにSECRETARYユーザーが使用できるフィールドがない場合、メニューはどのようにしてそれを表示するかどうかを知ることができます(メニューオプション用の個別のルールを作成する必要はありません)。
ZendのACLやNavigationのようなものは、メニューオプションをアクセス制御オブジェクトにすることまでしか進んでいないようです。これ: http ://www.tonymarston.net/php-mysql/role-based-access-control.html#menu-systemは私が求めていることを実行しているようですが、デモやコードチャンクが見つかりません。この特定のトピックについて話します。
次の質問は、データベース内のページ上のすべてのオブジェクトのリストを維持する必要がある場合は、データベースにもHTMLを含めて、ビューを使用する代わりにアプリケーションにページを動的にアセンブルさせることです。 +テンプレート?(もちろんキャッシュできます)
助言がありますか?