flask - MongoDB儲存的數據,標識怎樣在URL顯示的更簡潔?
巴扎黑
巴扎黑 2017-04-22 08:59:58
0
5
662

Flask MongoDB做的一個網站,文章管理塊,Mongodb中以ObjectId作的標識,當瀏覽指定文章時現在以ObjectId作為標識,url形式如下:
/article/53219ebcbe238721a805d3fe/
ObjectId這截有沒有好辦法處理的更短,更優雅些?

巴扎黑
巴扎黑

全部回覆(5)
阿神

看看這個:http://docs.mongodb.org/manual/tutorial/create-an-auto-incrementing-field/

伊谢尔伦

ObjectId 12 位元組共 96 位元資訊量,使用 64 進位的話每位能提供 6 位元資訊量,所以只需要 16 位元 64 進位位元。字母+數字共有 62 個字符,再找兩個標點就可以了 :-)

刘奇

可以使用數位自增id
mongodb官方提供了自增id的解決方法,參考

http://docs.mongodb.org/manual/tutorial/create-an-auto-incrementing-field/

主要原理是在資料庫中新建了一個counter計數的collection,記錄每個model的最大id,然後在save時更新id, 使用findAndModify中的$inc實現遞增,$inc是原子操作。

阿神

新弄一個字段,用來儲存ID,儲存的時候,再截一下。

或使用自訂義的Slug。

大家讲道理

如果是介面類別的,因為不會直接顯示到瀏覽器網址欄,所以直接用ObjectId吧。
如果是顯示文章,用:http://web/article/MongoDB存储的数据,标识怎样在URL显示的更简洁更好,更容易讓人理解。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板