比方說我要建在Rails的生成帖子的ID,如Facebook和類似的網站
Facebook的克隆目前我的路線是非常標準的,像
/group/1/post/3
我很想做一些合成的ID使用與Facebook等網站相同的編號方案。似乎有兩種類型的路由美學
# Only numbers
/group/10101830214008379/post/159476674458072
# Hash/Hex
/group/da295c4b/post/815fe818
外 -
- 有哪些優點/缺點使用兩種方法?
- 是否有一個好的行業標準或最佳實踐來爲用戶,組,帖子等概念生成合成ID。
- Ruby/Rails中生成每個ID的最佳方式是什麼?我知道
SecureRandom.hex
,但似乎會產生一個長散列。
謝謝!
我不知道Ruby,但我廣泛使用'crc32'散列來爲各種對象的唯一ID。轉換爲十六進制,它提供了一個8字符的散列碼,就像上面的十六進制代碼一樣。它位於Ruby的[zlib模塊](http://stackoverflow.com/questions/4273281/how-to-calculate-32-bit-crc-in-ruby-on-rails)中。 –