リクエスト
会社の部門にメンバーを追加したいのですが、私たちの会社にはより多くのオフィスがあり、各オフィスには独自の部門があるため、最初にそれを整理してから、各メンバーをその部門に割り当てて、アクセス権限のみを持つようにする必要があります。自分の部門。
Umbraco コンテンツとしての部門の概要:
Root Node
-Office 1
-- Department1.1
-- Department1.2
-Office 2
-- Department 2.1
-Office 3
-- Department 3.1
-- Department 3.2
-- Department 3.3
ここで、ユーザーを追加する場合、1 つのプロパティでオフィスを選択し、別のプロパティで部門を選択する必要があります。
可能な解決策
あちこちチェックすると、Umbraco のUltimatePicker型を使用して Office プロパティを作成し、親ノードにリンクされたカスタム データ型を作成してから、MemberType 内のプロパティを作成できることがわかりました。これにより、「ルート ノード」の下にオフィスが表示され、メンバーがそのうちの 1 つにリンクされます。
今、私が見た部門のプロパティを作成するには、カスタムの手動でコーディングされたプロパティを使用し、ユーザーコントロールを追加し、それを使用してオフィスの子供を動的に表示する方法がある可能性があります(私はまだ試していません、私は理論化しています) .
しかし、2 番目のプロパティが最初のプロパティに依存するのではないかと心配しています。ユーザー コントロールにumbraco.editorControls.userControlGrapper.IUsercontrolDataEditorを実装するカスタム プロパティを作成しようとすると、2 つではなく 1 つの値しか保存できません。彼ら。これは A プロパティであり、それらの束ではないはずなので、これは理にかなっています。
私の質問
さて、これら 2 つのカスタム プロパティを保持し、オフィスを変更した場合に部門も更新されるようにするための最良の方法は何ですか?
現時点で最高のクレイジーなアイデア
今のところ、各プロパティに 1 つずつ、2 つのユーザー コントロールを作成し、オフィスが更新されるたびに手動で部門をクリーンアップすることしか想像できませんが、これが可能かどうかはわかりません (本当に動的に部門を取得できますか? dep. property FROM office property usercontrol?) をクリーンアップし、コードを簡素化するためにそれらをまとめたいと思います。