ruby-on-rails – 在Rails上创建表时需要创建外键吗?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 在Rails上创建表时需要创建外键吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我现在开始使用Rails,我在论坛中查看,但我找不到任何可以解决我问题的方法.

在这里,我有一个分类表,它只有一个列的名称(类别中没有重复)所以我希望名称是主键,然后我有一个名称,main_photo,描述的产品表我想说一个产品只有一个类别,我是否需要在产品中添加一个名为category的列作为外键?

一个类别可以提供许多产品.

那么在类别模型中我怎么说名称是主键,我怎样才能在产品类别和类别中对应的主键名称之间进行对应?

解决方法

Active Record中的外键约束并不经常使用,因为Active Record背后的意识形态表示这种逻辑应属于模型而不属于数据库数据库只是一个愚蠢的存储: http://guides.rubyonrails.org/migrations.html#active-record-and-referential-integrity.

Rails的方法是在所有表上都有一个ID列,包括Categories表,在Products表中,有一个名为Category_ID的列.请注意,表名是复数.

然后在您的模型中定义实体Product和Category之间的关系.阅读文章A Guide to Active Record Associations,它将回答您的所有问题,尤其是第2.1,2.2和3.3节.

猜你在找的Ruby相关文章