如何计算从页面表中获取的记录数量?

时间:2016-04-21 06:59:10

标签: mysql ruby

我是红宝石的新手我在这里遇到很多问题。我想计算从pages

获取多少记录

这是我的代码 -

@page = Page.find_by_id(1)
#render text: @page.size
#render text: @page.length
#render text: @page.count
if @page.size
   @page_name = @page.page_name
else
   redirect_to root_url
end

我收到错误消息:

undefined method `size' for nil:NilClass

此外,我还尝试使用lengthcount相同类型的错误消息。请帮帮我。

1 个答案:

答案 0 :(得分:1)

ActiveRecord::Base#find只返回一条记录。

应该使用ActiveRecord::Base#where来搜索多个记录:

@page = Page.where(condition_here)

使用find

正如我在上面链接的文档中明确指出的那样,find方法如果无法查找记录,将引发RecordNotFound异常。 如果使用find 失败,请重定向到404:

begin
  @page = Page.find_by_id(1)
  @page_name = @page.page_name
rescue RecordNotFound
  redirect_to root_url
end