rails中的关联关系
发表于:,更新于:,By Sally
rails中的关联关系
- belongs_to
- has_many
- has_one
一般在模型中,定义表间关系
eg:
- 一个案例是属于户主的,也是属于工人和监理的;
同时,一个案例有很多个案例细节
1 | class Decoratingcase < ActiveRecord::Base |
- 一个案例细节属于某个案例,也属于某个案例阶段
同时,一个案例细节包含很多个细节图片
1 | class DecoratingCaseDetail < ActiveRecord::Base |
- 细节图片呢,就是属于案例细节的
1 | class DecoratingCaseImage < ActiveRecord::Base |
那,各个模型之间的查询就可以简单的表示为如下的形式:
- 根据案例细节查找案例阶段的名字: 某个案例细节只属于一个案例阶段 (try()方法确保不会出现找不出数据而报错)
1 | decorating_case_detail.decorating_case_stage.try(name) |
- 已知案例细节查找该案例的施工地址
1 | decorating_case_detail.decorating_case.address |
- 已知案例细节,找出该细节的所有图片: 某个细节包含多个细节图片
1 | decorating_case_detail.decorating_case_image.map(&:image_url) |