我有我的范围:
scope :latest_photos, -> {order(:created_at).reverse_order.limit(10)}
它应该把最新照片放在第一位吗?好的照片放在最后一个地方。
我也尝试过:
scope :latest_photos, -> {order('created_at DESC').limit(10)}
但没有。有任何想法吗?谢谢!
这里有些东西不起作用:
的routes.rb
get 'spots/ultimos' => 'photos#latest
照片控制器
def latest
@categories = Category.all
@zones = Zone.all
@photos = Photo.latest_photos
@action = 'general'
@photos = Photo.paginate(:page => params[:page])
render :index
end
模型
scope :latest_photos, -> {order(created_at: :desc).limit(10)}
答案 0 :(得分:3)
def latest
@categories = Category.all
@zones = Zone.all
@photos = Photo.latest_photos
@action = 'general'
@photos = Photo.paginate(:page => params[:page])
render :index
end
您已分配@photos
个变量两次,第二个分配会覆盖前一个变量。而是做:
def latest
@categories = Category.all
@zones = Zone.all
@photos = Photo.latest_photos
@action = 'general'
render :index
end
要分配的实际值取决于您希望在此处实现的目标。由于行动是最新的,你的范围有限,我认为你不需要分页。