2012-01-20 28 views
1

我有大約20個不同的表,每個表都有不同的父/子關係。我最近被要求根據所有這些表格創建我們網站的麪包屑和網站地圖。動態網站地圖,基於多個表的BreadCrumb

我的一個想法是從這些表中刪除父/子關係,並基本創建一個包含id和parentId的表,並且每當我需要拉父子關係時,我只需加入parent_child_relationships表無論我是從哪個表特別拉。

這是否有意義?

無論如何,這個想法的問題是,我不喜歡它。哈哈。

有沒有人有任何其他的想法如何做到這一點?或者根據由20個左右表格組成的網站,建立面包屑和網站地圖的正確方法是什麼?

如果有幫助,我的網站由asp.net,ColdFusion組成,並使用MSSQL數據庫。

謝謝!

+1

將您的網站導航置於您的表結構之外通常會導致可用性問題。應用程序的技術後端對最終用戶來說並不重要。我會獨立於表結構來接近導航(麪包屑,信息拱等)。 – ryankeairns

+0

然後,作爲開發人員的工作就是執行這個'願景' - 將前端和後端聯繫在一起:) – ryankeairns

回答

1

不要讓UI的實現影響您的模型的設計,特別是不會影響您的數據庫。建立前端的原型,讓您的客戶參與,給他們一個聲音。建立你的麪包屑和網站地圖,而不是最初綁定到你的實際數據庫。一旦您的客戶說「那就是我們想要的,就像那樣」,然後凍結原型,然後處理實際的實現 - 您的應用程序將如何請求數據,您將使用何種類型的數據對象,然後構建數據庫,

「我有一個想法,就是要從每個表的父/子關係,並創建包含id和parentId的基本上一代表」

這是不是一個非常靈活的解決方案,不*反向正常化你的分貝。遵循標準關係數據庫建模/標準化技術。大量的小型綜合表與大量的關聯表。