1

我正在使用 gem,will_paginate,对 Rails 站点上的内容进行分页。

它的用法是:(来自官方示例)

## perform a paginated query:
@posts = Post.paginate(:page => params[:page])

# or, use an explicit "per page" limit:
Post.paginate(:page => params[:page], :per_page => 30)

## render page links in the view:
<%= will_paginate @posts %>

现在在某些视图中,我需要分页,但有些视图我不需要。所以当使用通用布局渲染出内容时,没有分页的页面会显示错误。

will_paginate 未定义方法错误

有没有办法在视图尝试显示之前检查 will_paginate 是否是有效函数?

提前致谢,

4

2 回答 2

1

你可以利用rescue. 例如 :

<%= do_something rescue do_something_else %>
于 2012-05-02T08:52:56.567 回答
0

您可以使用defined? will_paginatewill_paginate @posts rescue _do_something_else_defined?告诉你函数是否被定义,任何你可以在 if 中使用它,处理rescue异常。

于 2012-05-02T08:54:36.440 回答