爲什麼Post.page(1).total_pages導致:理解將分頁範圍/關係
Post.page(1).total_pages
undefined local variable or method `total_pages' for #<ActiveRecord::Relation:0x00000006a95230>
但
Post.scoped.page(1).total_pages
工作正常。奇怪的是,
Post.paginate(:page => 1).total_pages
工作正常。我查看了Github上的代碼(https://github.com/mislav/will_paginate/blob/master/lib/will_paginate/active_record.rb),我可以看到paginate的工作原理(因爲它首先調用限制......它返回一個活動的記錄關係,非常類似於scoped)。我有事情做與此代碼
rel = scoped.extending(RelationMethods)
我想我不明白的活動記錄關係,限制了收益與scoped.extending(RelationMethods)之間的這些差別的感覺。有任何想法嗎?
這樣做的工作:'Post.page(1).all.total_pages' – apneadiving
你使用的是什麼版本的Rails和will_paginate?我無法複製這個。 –
@apneadiving no,仍然得到未定義的方法。 – davekaro