一個字段搞定文章的置頂、隱藏、排序

網站(http://www.xqkblog.com)文章多起來了,就產生了不少需求,如某些文章須要置頂,某些文章須要暫時不顯示出來,也有可能要按照必定的順序對文章排序,如何實現這些看上去很簡單的需求呢?網站

一個簡單的思路是給文章添加3個字段,分別是
    bool isTopMost
    bool isHidden
    int order
這樣固然能夠實現,彷佛也不是很複雜,可是仔細觀察後發現,這3個屬性都具備排他性,即當isTopMost爲真時(置頂)就能夠忽略isHidden和order的值,其它亦然。既然如此,何不把它們合併在一塊兒呢?!個人作法是把這3個字段合併爲一個int doc_order字段,用不一樣的值來表示不一樣的文章狀態:
    負值(-1) 表示隱藏;
    0 表示置頂文章;
    正值 用於排序
顯示列表的時候用查詢"select ... from ... where  ... and doc_order>=0 order by doc_order」就能夠了。blog

相關文章
相關標籤/搜索