Mongodb / morphia和RESTful API - 如何处理ID?

时间:2014-12-27 01:35:16

标签: mongodb rest morphia

Mongodb建议为每个持久化文档使用ObjectId个ID,但这对于RESTful API来说并不是很好,其中网址通常包含简短易记的ID,例如/users/12/about或{{1}等等。

处理此问题的最佳做法是什么?

  • /projects/1/users为长号并使用计数器集合来跟踪它们?
  • 单独留下_id并为这些序号创建单独的字段?
  • 别的什么?

谢谢!

2 个答案:

答案 0 :(得分:1)

如果您想将_id用于@Reference,我就不会更改{{1}}。 (至少在历史上)这导致了参考问题。

单独的id字段可能是更好的解决方案。或者(如果可用)使用自然ID。例如,如果有唯一的用户名,请使用该用户名而不是数字ID。

答案 1 :(得分:1)

您可以根据自己的身份使用任何ID。如果你不让mongodb在插入时分配一个ObjectId,你只需要自己管理这些ID并保证它们的唯一性。这不是问题,但确保它是正确的可能需要一些工作。但如果这就是你所需要的,那么这样做绝对没有错。