我正在尝试使用UUID作为Rails应用程序的主键,并在遇到问题后遇到问题.
我在迁移中指定了:create_table:users,:id => false do | t | 然后这个:执行("ALTER TABLE users ADD PRIMARY KEY(uuid)")
在我的用户模型中:set_primary_key"uuid"
使用UUID工具生成UUID.
这一切都很好,我目前遇到的问题是生成的schema.rb如下所示:
create_table"users",:primary_key =>"uuid",:force => true do | t |
假设主键列是11个字符的整数而不是36个字符的字符串,因此运行迁移会生成正确的数据库,但测试数据库生成不正确,如果我要运行rake db:schema:load,则会失败还有......
需要弄清楚如何覆盖schema.rb假定如果有一个主键列它将是一个整数的方式....
我遇到了这个问题。据我所知,不可能超越 Rails 要求 PK 为整数的要求。为了绕过这个问题,我所做的就是在数据库上添加一个唯一的键,然后在每个模型上设置默认范围,以通过我的唯一字符串而不是常规整数进行搜索
| 归档时间: |
|
| 查看次数: |
1463 次 |
| 最近记录: |