0

MVC 4 .NET を使用して CMS システムを構築しています

システムには次のオブジェクトがあります。

ページの種類

  • ID
  • 名前
  • Layout - レイアウト ファイルへの URL

ページ

  • ID
  • 親ID
  • コンテンツ(など)

モジュール

  • ID
  • 名前
  • タイプ (画像ギャラリー、連絡先ページ、FAQ などのモジュールのタイプ)

質問

現在、すべてのページにモジュールを実装する方法に苦労しています。すべてのページにコンテンツとモジュールのリストが含まれるように、アプリケーションを作成しました。

私の問題は、ページのレイアウトを事前に知っておく必要があることです。したがって、ビュー内の各モジュールをレンダリングする場所がわかります。

私はこの解決策について考えました:(私が現在使用している現在の解決策)

各ページのタイプのレイアウト ページを作成し、モジュールのタイプを各ページ レイアウトに関連付けます。

ユーザーが新しいページを追加したい場合、最初に関連するモジュールの数とともにレイアウト (ページ タイプ) を選択する必要があります。そのソリューションの問題は次のとおりです。

  • ページの種類ごとにレイアウトを作成する必要があります。
  • ユーザーは、ページ レイアウト (タイプ) に関連付けられたモジュールのみを追加できます。

2番目の解決策:

私が考えた 2 番目の解決策は、関連するモジュールに基づいて動的にレイアウトを作成することです。私はそれを実装する方法がわからないことを付け加えたいです。

そのソリューションでは、ユーザーは好きなだけモジュールを追加できます。しかし、モジュールでページ構造を定義する方法がわかりません。

  • ユーザーがモジュールを作成しなかった場合はどうなりますか? レイアウトにどのように影響しますか?
  • モジュールが次々に来ない場合、どうすれば構造を作成できますか?

基本的に、モジュールの位置をページに保存し、ビューにモジュールをその位置にレンダリングする方法があります。

必要な位置で、各モジュールの部分ビューをレンダリングする必要があることを私は知っています。

モジュールオブジェクトがどのように見えるべきか方法があれば?

私の質問は十分に明確ですか?

4

0 に答える 0