【发布时间】:2013-09-05 21:25:03
【问题描述】:
class CreateCustomers < ActiveRecord::Migration
def change
create_table :customers do |t|
t.belongs_to :user
t.string :firstname
t.string :surname
t.timestamps
end
end
这些是我的模型:
class Customer < ActiveRecord::Base
belongs_to :user
end
class User < ActiveRecord::Base
has_many :customers
end
找到t.belongs_to :user 在数据库中添加外键。
但是当我用 pgadminIII 检查我的 postgre 数据库时,没有列出 foreign_key。
迁移添加了应有的 user_id,但没有列出 foreign_key。
对此有何解释?
最好的问候 否认
编辑:有关t.belongs_to的更多信息
create_table :accounts do |t|
t.belongs_to :supplier
t.string :account_number
t.timestamps
end
这是一个例子。来自 railsguide 电子书第 2 章。
【问题讨论】:
-
我通常使用 t.references :user, index: true 来处理这种情况,我知道它适用于 PG。
标签: ruby-on-rails postgresql ruby-on-rails-4 database-migration