【发布时间】:2011-02-07 18:20:11
【问题描述】:
我在我正在构建的 Ruby on Rails 应用程序中创建了一个名为标签的表。它是一个博客应用程序,因此我允许用户将标签与帖子相关联,并通过 :posts、:has_many => 标签和 Tag belongs_to :post 关联来做到这一点。
现在我有了我的标签表,我想看看我将如何渲染视图,以便它显示标签和标签计数。 (应该注意,我试图在 /views/posts/index.html.erb 文件中呈现它)。
例如,如果 tag_name Sports 的 Tag 表中有 10 个条目。如何在视图中显示 Sports (10)。我不希望为特定标签执行此操作,而是以某种方式搜索表格,组合类似标签并显示所有标签的列表,并在它们旁边显示计数。 (我真的希望这些是指向包含该标签的帖子列表的链接,但我很早就学会了一次只问一个问题。
希望这是有道理的。
评论更新
查看
<% @tag_counts.each do |tag_name, tag_count| %>
<tr>
<td><%= link_to(tag_name, posts_path(:tag_name => tag_name)) %> </td>
<td>(<%=tag_count%>)</td>
</tr>
<% end %>
postsController:
def index
@tag_counts = Tag.count(:group => :tag_name)
@posts = Post.all :order => "created_at DESC"
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @posts }
format.json { render :json => @posts }
format.atom
end
end
【问题讨论】:
标签: ruby-on-rails