小弟最近常常卡在這類型分類顯示的程式撰寫!
覺得自己寫的方法有點暴力,但是每次用這類的顯示功能都要想很久!
請教各位大師有沒有推薦的顯示方式
資料表如下
id | content | category | subcategory | type |
---|---|---|---|---|
1 | 內容1 | 大分類1 | 小分類1 | 類型1 |
2 | 內容2 | 大分類1 | 小分類1 | 類型2 |
3 | 內容3 | 大分類1 | 小分類2 | 類型1 |
4 | 內容4 | 大分類1 | 小分類2 | 類型1 |
5 | 內容5 | 大分類2 | 小分類1 | 類型1 |
6 | 內容6 | 大分類2 | 小分類1 | 類型1 |
7 | 內容7 | 大分類2 | 小分類2 | 類型1 |
因為是LOG紀錄! 把原本提交時的內容都寫入這張表!
每個內容都會有 大小分類、類型
但是要顯示LOG紀錄的時候!需要顯示成下方階層
如資料表 大分類1>小分類2>類型1 有兩筆內容! 因為以上分類都一樣,所以只顯示一次,但裡面兩個內容要顯示出來。
我現在是每一層都跑一次這張資料表,然後記錄與前次不同才顯示。
想請問各位大大有沒有其他更好的方法。
要不試試把Log記錄成Json格式的文本:
[
"大分類1":[
{
"小分類1" : [
{"類型1":[內容1]},
{"類型2":[內容2]}
]
},
{
"小分類2" : [
{"類型1":[內容3, 內容4]}
]
}
],
"大分類2":[
{
"小分類1" : [
{"類型1":[內容5, 內容6]}
]
},
{
"小分類2" : [
{"類型1":[內容7]}
]
}
]
]
之後,後端再來parser Json輸出, 目前常見的程式語言都有支援剖析Json的套件 !
如果是 LOG
那麼用「階層式」的顯示方式就沒有什麼必要
上面做一個篩選器
下面直接列出符合篩選條件的資料(不分階層)
參考Mantis 這樣
因為不是很瞭解你實際上是怎麼運作的,
只能用猜的,
舉個簡單的例子,
譬如說台灣的住址,
一定會有 縣市 跟 鄉鎮(區),
譬如說台北市XX區
台北市 等 縣市 一個表, 每個都有一個代號
這個就是大分類,
XX區 會跟 縣市有關聯,
另外做一個表,
這算是小分類,
然後地址裡面就帶入 縣市 跟 鄉鎮,
(其實這個例子帶鄉鎮就可以, 因為可以關聯到縣市)
大概是這樣的概念,
我的 鐵人賽文章 這邊有提到一個簡單的實作,
只是不知道這個概念能不能用到你做的東西上.
弄成GRID會不會好一點?
兩個查詢條件,大分類 小分類(都下拉選單
下面就GRID,兩欄位 類型 內容(類型當查詢條件也可以
像上圖這樣(圖醜抱歉