2010-11-25 53 views
3

看起來像will_paginate不支持分頁散列對象。 我有一個基本上是我想要在頁面上輸出的yaml文件集合的文章列表。rails3 will_paginate散列對象

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 

任何人都可以建議我如何爲此編寫分頁嗎? 謝謝。

回答

6

在你的控制器:

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] %>