ruby-on-rails – 使用视图部分的范围

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 使用视图部分的范围前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在使用示波器来展示一些信息,以显示已经完成并且24小时的待办事项

scope :completed,joins(:user).where(:todos => { :complete => true })
scope :logged,completed.where("todos.updated_at <= ?",1.day.ago)

使用常规todo部分

<%= render @user.todos.logged =>

但是,我想在不同的部分_logged.html.erb中显示这些记录的项目.我只是无法弄清楚将范围结果传递给特定部分的正确方法.

谢谢

解决方法

好吧,如果你想为每个项目渲染部分,你可以这样做:

<%=render :partial=> 'logged',:collection=>@user.todos.logged %>

或者,如果您想将整个数组传递给一个实例,那么您可以这样做

<%=render :partial=> 'logged',:object=>@user.todos.logged %>

在这两种情况下,我猜你的对象将被调用记录.

假设您的部分包含<%= logged.title%>您想为每个项目渲染,因此您可以使用第一个版本.

猜你在找的Ruby相关文章