rails3 will_paginate хеш-объект - PullRequest
3 голосов
/ 25 ноября 2010

Похоже, will_paginate не поддерживает разбиение на страницы хеш-объекта. У меня есть список статей, который в основном представляет собой набор yaml-файлов, которые я хочу вывести на страницу.

def index
  @articles = Dir["#{Rails.root}/blog_articles/*.yml"].inject({}) do |h, file|
    h["#{File.basename(file, '.yml')}"] = YAML::load(File.open(file))
    h
  end
end

Может кто-нибудь предложить мне, как написать для этого нумерацию страниц? Спасибо.

1 Ответ

6 голосов
/ 25 ноября 2010

В вашем контроллере:

def index 
  @articles = Dir["#{Rails.root}/blog_articles/*.yml"].inject({}) do |h, file|   
    h["#{File.basename(file, '.yml')}"] = YAML::load(File.open(file)) 
    h 
  end 

  # paginate the keys of the hash instead of the hash itself
  @article_keys = @articles.keys.paginate
end    

По вашему мнению:

<% @article_keys.each do |k| %>
  <%= @articles[k] %>
...