这一定是一个普遍的问题,所以我很惊讶谷歌没有找到更多的答案。我正在开发一个具有多种不同实体的 Rails 应用程序,这些实体需要与不同实体的关系。例如:
Address:存储街道地址详细信息的模型(这是我的共享实体)PersonContact:包括家庭电话、手机和电子邮件地址等内容的模型。这个模型需要有一个与之关联的地址DogContact: 显然,如果你想接触一只狗,你必须去它居住的地方。
所以,PersonContact并且DogContact应该有外键Address。即使,尽管它们确实是Address. 这很好,除了accepts_nested_attributes_for指望外键Address正常工作。
将外键保留在 中Address但拥有PersonContact并DogContact成为拥有对象的正确策略是什么?