0

我正在使用 will_paginate gem,并尝试根据这个 RailsCast 实现 DataTables,并发现提供属性 total_entries 是个好主意,因为 will_paginate 显然不能很好地做到这一点。

所以我将此方法添加到我的类中,如下所示:

class Genotype < ActiveRecord::Base
  attr_accessible :allele1, :allele2, :run_date
  belongs_to :gmarkers
  belongs_to :gsamples

  def total_entries
    @t = Genotype.count;
    return @t
  end

end

但是,当视图尝试加载时,我仍然会收到此错误(这是网络服务器响应的屏幕截图):

   (7.6ms)  SELECT COUNT(*) FROM "genotypes" 
Completed 500 Internal Server Error in 96ms

NoMethodError (undefined method `total_entries' for nil:NilClass):
  app/datatables/genotypes_datatable.rb:13:in `as_json'
  app/controllers/genotypes_controller.rb:7:in `block (2 levels) in index'
  app/controllers/genotypes_controller.rb:5:in `index'

显然,我在定义我的方法时一定做错了什么;但是什么?我对 Rails 太缺乏经验,无法摆脱这种情况......

提前致谢,

瑞克

4

0 回答 0