2012-11-29 93 views
0

我试图在我的代码中减少重复。我在几个地方的代码(或其变体):Rails:将重复更改为循环

@articles1 = Article.all_articles(1).reverse 
@articles2 = Article.all_articles(2).reverse 
@articles3 = Article.all_articles(3).reverse 

是将它更改为类似的方式:

3.times do |i| 
    @articles[i+1] = Article.all_articles(i+1).reverse 
end 

干杯!

回答

1

如何:

@articles = (1..3).to_a.map { |i| Article.all_articles(i).reverse } 
+0

我得到一个未初始化的常数错误? '未初始化的常量DocumentsController :: Articles'。 –

+0

对不起,应该是'文章',更新了我的答案。 –

+0

这很好!非常感谢你。 –