在我的模型(pins.rb)中,我有两个排序顺序:
default_scope order: 'pins.featured DESC' #for adding featured posts to the top of a list
default_scope order: 'pins.created_at DESC' #for adding the remaining posts beneath the featured posts
这个排序顺序(上图)是我希望我的“引脚视图”(index.html.erb)的外观。这只是所有用户帖子的列表。
在我的“用户视图”(show.html.erb)中,我使用相同的模型(pins.rb)仅列出 current_user 引脚。但是,我想排序以忽略“特色”默认范围,只使用第二个范围:
default_scope order: 'pins.created_at DESC'
我怎样才能做到这一点?我试着做这样的事情:
default_scope order: 'pins.featured DESC', only: :index
default_scope order: 'pins.created_at DESC'
但这并没有飞...
更新
我更新了模型以定义范围:
scope :featy, order: 'pins.featured DESC'
default_scope order: 'pins.created_at DESC'
并将我的别针视图更新为:
<%= render @pins.featy %>
但是,现在当我打开我的引脚视图时,我得到了错误:
undefined method `featy' for #<Array:0x00000100ddbc78>