【发布时间】:2011-01-23 22:06:31
【问题描述】:
我的实践控制器索引方法中有以下代码:
@practices = @activity.practices.order('created_at DESC').limit(20)
不幸的是,限制调用不起作用,@practices 返回 >20 个对象。我确信这是一件很容易解决的事情,但我不确定我做错了什么。我似乎正在按照文档中规定的方式使用这种方法..
我尝试在订单调用之前调用限制,结果相同。
更新
SQL 日志:
Practice Load (1.6ms) SELECT "practices".* FROM "practices" WHERE ("practices".activity_id = 9) ORDER BY practiced_on DESC, created_at DESC LIMIT 20
但是,在日志的后面,我发现了这个:
Rendered practices/_practice.html.erb (216.9ms)
Activity Load (0.6ms) SELECT "activities".* FROM "activities" WHERE ("activities".user_id = 1)
Practice Load (0.8ms) SELECT "practices".* FROM "practices" WHERE ("practices".activity_id = 8) ORDER BY practiced_on DESC
CACHE (0.0ms) SELECT "practices".* FROM "practices" WHERE ("practices".activity_id = 9) ORDER BY practiced_on DESC
这让我认为部分不接受正确的集合。部分被称为:
<%= render @activity.practices %>
有什么建议吗?
TIA
【问题讨论】:
标签: ruby-on-rails-3 limit