Rails 4 - 重命名主键

时间:2016-09-06 17:19:51

标签: ruby-on-rails-4

我正在连接现有的数据库,为管理做一些简单的支架。他们使用的命名约定是table_id。因此,我需要将默认主键从“id”修改为“customer_id”,例如。我也希望能够使用rails scaffolding进行此更改,而无需重新连接所有内容。

2 个答案:

答案 0 :(得分:1)

我遵循了这个指南:http://ruby-journal.com/how-to-override-default-primary-key-id-in-rails/

似乎工作正常。

答案 1 :(得分:0)

其实你不想这样做。

Id仅适用于数据库,在Rails中您可以使用外键,并说出类似

的内容

Costumer has_many:XXX  和 XXX belongs_to:Costumer

您在数据库上给出1-n关系,这意味着XXX需要消费者存在。

回答为什么你不想改变它,是因为你的数据库不会知道如何改变后的行为(如果可能的话),以及如何在没有和ID的情况下搜索新脚手架上的物品?因为ID是Costumer ID

如果您不知道如何提供外键,click here