新手在这里,围着我的脑袋绕着这个东西!
我想使用十六进制数作为我的url(外部标识符),并将uuid保留在数据库中,以便在rails应用程序上使用ruby。这甚至可能吗?
非常感谢
答案 0 :(得分:1)
很多人建议你不要这样做,但是,是的,这是可能的。它需要一些代码,解决方案取决于您使用的Rails版本以及您用于数据库的内容,这就是我将以通用方式回答的原因。
您需要为模型提供两个不同的字段:一个用于外部十六进制表示,另一个用于单独的UUID。然后,您可以使用十六进制字符串在控制器操作中查找实例,例如。
请看一下以下内容(它们似乎没有两个字段,但无论如何都会指向正确的方向):
Problems setting a custom primary key in a Rails 4 migration
Change Primary Key Issue Rails 4.0
还有一篇类似的事情要做的更长的帖子:http://ruby-journal.com/how-to-override-default-primary-key-id-in-rails/
此外,FriendlyId gem可能会做你想要的。