この質問は、私のprevious questionを参照しています。私の要件に基づいて私は自分のデータベースにいくつか修正を加えましたが、サブメニュー(メインメニューpg_Pages
ではなく別のテーブルから作成する必要があります)を作成する方法はまだわかりません。データベース駆動メニューのWebサイト(CMS)の検討と提案のためのデータベースデザイン
私はページ情報pg_Pages
私は自分のメニューを作成することができます。私の問題は、これらのページをpg_Pages
テーブルに保存するので、「About Us」と「Multimedia」のサブメニューを簡単に作成できますが、News
のサブメニューを作成する必要があります。 News Category
テーブルから、適切なページハンドラにリンク。&問題magazine
テーブルから。
メニュー例
サンプルデータ
pg_Pages Table
PageID PageName LangID PagePositionNo PageURL PageInheritance
1 Home 1 10 Default.aspx 0
2 About Us 1 20 Page.aspx 0
3 PageOne 1 10 Page.aspx 2
4 PageTwo 1 20 Page.aspx 2
5 Multimedia 1 30 Page.aspx 0
6 Video 1 10 Videos.aspx 5
7 PhotoGallery 1 20 Gallery.aspx 5
8 News 1 40 News.aspx 0
9 Issues 1 50 # 0
10 Publication 1 60 Page.aspx 0
11 SpanishHome 2 10 Default.aspx 0
12 SpanisAbout Us 2 20 Page.aspx 0
------------------------------------------------------------------------------
Magazine
MagazineID MagazineIssueCode LangID MagazineTitle MagazineLiveIssue(CurrentIssue)
1 101 1 Mag Title 0
2 102 1 Mag Title 1
3 101 2 SpanisgMag Title 0
4 102 2 Mag Title 1
------------------------------------------------------------------------------
art_Article Table
ArticleID ArticleTitle ArticleCatID MagazineID Language TYPE
1 Article one 100 1 1 Artile
2 Article two 100 1 1 Artile
3 Article three 200 1 1 Artile
4 Article four 300 1 1 Artile
5 Article Five 100 2 1 Artile
6 EditorMessage 300 2 1 EditorMessage
7 Article seven 200 2 2 Somthing
------------------------------------------------------------------------------
私は私のデザインが異なるテーブルからのメニューを読むのに十分な柔軟性を持つようにしたいです。すべてのメニューのための別のテーブルを作成するのではなく、それをページにリンクするために、どのようなアプローチ/変更を行うべきですか?このシナリオに最適な方法を提案してください。
IssueID
または他のIDに基づいて静的リンクを作成してクエリを実行するのではなく、システムに非常に柔軟性があり、データベースから直接メニュー情報を読みたいと思っています。
News Menu
基本的に記事のカテゴリを表示します。さらに、特定の問題の記事があるNews
メニューのカテゴリのみを表示するクエリが必要です。問題102が、文化に関連する記事を持っていない場合、カルチャサブメニューはニュースの下に表示すべきではないとします。
から
@Filip、MenuID、MenuName、PageIDなどのフィールドフィールドを持つ別の 'Menu'テーブルを作成する必要があることを意味しますか?私が間違っている場合、私に例を教えてください。 – Learning
私はあなたのWebアプリケーションmenu.jsonを開き、そこに構造全体をダンプします。 –