【发布时间】:2014-06-15 23:48:52
【问题描述】:
我了解外键用于指定子类何时具有不同的列名(不同于父子类的类名)。我知道主键和外键是什么,并且已经多次阅读有关关联的 rails 文档,但我无法弄清楚主键选项的用途。
1) 但是primary_key 选项有什么用呢?调用关联时如何改变sql?
2) 在什么情况下您需要在关联时指定 primary_key?
3) 在什么情况下您需要同时指定 primary_key 和 foreign_key?
以下是在关联上指定 foreign_key 选项的示例:
class User
has_many :texts, foreign_key: :owner_id
end
class Text
belongs_to :user, foreign_key: :owner_id
end
User Table
id| name |
Text Table
id| owner_id |name
【问题讨论】:
标签: ruby-on-rails associations primary-key rails-activerecord model-associations