2011-02-18 125 views
3

我有一個部分,這將在項目的許多地方使用。按名稱獲取ActiveRecord的屬性

它呈現的項目,涉及到特定的標籤,如:

@tag.articles.each do |a| 
    # render articles 
end 

我需要這部分的渲染,不僅文章,但其他任何物品與標籤有關。

所以,這部分有一個參數association_name,看起來像這樣:

@tag[association_name].each do |a| 
    # render articles 
end 

我把這個部分在以下幾個方面:

# to render articles 
render :partial => "items", :locals => {:association_name => "articles"} 

# to render videos 
render :partial => "items", :locals => {:association_name => "videos"} 

# etc. 

的問題是 - 我不能引用的領域文章模式中的一種:

@article[association_name] 

如何做到這一點,爲什麼它不起作用?

回答

5
@article.send(association_name)