ActiveRecord 中的 include 关系

对 include 很多开发者避而不谈,也有很多人趋之若骛。其实归根结底只是生成了不同的 SQL 语句。至于造成的影响,见人见智,当然和项目的需求有很大的关系。

但是有一点,include 既不是天使也不是恶魔。

合理的使用 include 可以避免 N+1 的问题,但是 Rails 生成的 SQL 确实不怎么好看……而且今天还发现了一个问题:

A 中声明了一个关系

has_many :items, :order => 'some_time_field DESC'

但是在执行 A.find(123, :include => :items) 的时候,可以发现对象的 items 集合并没有按照预想的顺序排列,查看 log 中的 SQL 记录,发现 order 子句并不在里面。

暂且归结为 BUG 或者未完成状态吧……

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值