一般来说,在 REST API 中使用外部 ID 的最佳实践是什么,特别是在 Rails 中?
一些背景:
我为我的应用程序创建了一个 API,它使用基于标准资源的 JSON REST API。
我有一个 Flight 模型,用户可以通过它通过 POST 到 /api/flights 创建模型对象。这会像 ActiveRecord 一样为新的 Flight 对象分配一个唯一的 id。
到目前为止相当标准。
但是,我的客户希望我提供一个选项,在 API 中创建 Flight 对象时自己分配一个 id,然后使用他分配的 id 来显示/更新/删除(等)对象通过 API。
我想我可以简单地添加一个 external_id 参数并通过 external_id 添加路由来更新/删除/索引。然而,这似乎使优雅的基于资源的 Rails 方法变得混乱。
那么,最佳实践是什么?