为用户提供其数据域内的“主键”

时间:2011-03-03 17:15:47

标签: ruby-on-rails database postgresql

我有一个由很多帐户组成的rails应用程序。

在这些帐户中,用户可以创建票证。

为每张故障单提供其帐户内的顺序ID的最佳方法是什么?

显然,管理id我自己似乎是最初的答案,但这似乎充满了各种可能导致问题的边缘情况(例如,两张票一次写入DB ......)

1 个答案:

答案 0 :(得分:1)

我认为你最终会自己管理它们 - 我之前已经实现了类似的东西,帐户存储了'current_ticket_id',然后当一个票据(例如)被创建时,它仍然存储在全局PK中,但随后是观察者为它分配一个friendly_ticket_id,然后在下一轮的帐户模型上递增为1。您可以通过您的网址使用该范围内的friendly_ticket_id确保您获得正确的机票。