之前有客戶在用我們的系統(tǒng)做的網(wǎng)站時,遇到這樣一個問題。就是把一級分類放進(jìn)二級分類后,發(fā)現(xiàn)包括一級在類的以及他所有的子類全都消失。
這是由于一級分類的編碼發(fā)生變化,而二級分類的編輯依舊是原來的,找不到原來的頂極分類造成的。
于是我們開始想解決方案
1:醉早想到的方案是當(dāng)編輯一級分類的時候,頂極菜單只顯示一級分類,從而達(dá)到無法將一級分類放進(jìn)二級分類中去的目的。
2:當(dāng)編輯二級分類的時候,正常顯示所有的一級分類和二級分類。
然后有朋友說這樣不行。
因?yàn)槿绻刖庉嬆骋粋€一級分類到其他的分類的子類下,這樣就實(shí)現(xiàn)不了,這樣需要先操作一級分類到其他主類下,然后再編輯到子類。步驟多了一步操作。費(fèi)勁。
于是我們又想到了下面這樣的一個解決方案。
當(dāng)編輯一級分類的時候,只是不顯示當(dāng)前分類和其子類,其他的主類和子類正常顯示。
這樣既能避免剛才說的出現(xiàn)欄目消失的狀況,又能正常將其編輯為其他欄目的子類的子類。
代碼修改之后為控制器中:makeSortSelect函數(shù)
將原來的子菜單處理放進(jìn)了上面的IF中。