【发布时间】:2016-03-01 19:14:22
【问题描述】:
我有一个已经存在的数据库架构,其中包含以字符串列作为主键的表以及一些以多个列作为键的表。我想在 rails 中映射这个模式,但我不知道如何覆盖默认主键(由 rails 框架创建的列 id)。
【问题讨论】:
标签: ruby-on-rails overriding primary-key rails-models
我有一个已经存在的数据库架构,其中包含以字符串列作为主键的表以及一些以多个列作为键的表。我想在 rails 中映射这个模式,但我不知道如何覆盖默认主键(由 rails 框架创建的列 id)。
【问题讨论】:
标签: ruby-on-rails overriding primary-key rails-models
你可以像这样覆盖主键
class Book < ActiveRecord::Base
self.primary_key = 'author'
end
【讨论】:
我不知道你想做什么。在 Rails 中更改主键是错误的。
但就此而言,请尝试在您的迁移中进行。
class Foos < ActiveRecord::Migration
def self.up
create_table :foos, :id => false do |t|
t.string :my_id
t.timestamps
end
end
end
【讨论】: