我已經使用Ruby on Rails構建了一個博客應用程序。在應用程序中,我有帖子和標籤。發佈has_many:標籤和標籤belongs_to:發佈。顯示傳遞的參數問題的帖子 - Ruby on Rails
在/views/posts/index.html視圖中我想顯示兩件事情。首先是所有顯示'created_at DESC'的帖子的列表,然後在側欄中,我想引用我的標籤表,組記錄和顯示爲允許使用該標籤查看所有帖子的鏈接。
更新: 顯示重複帖子和帖子無w/o標籤不顯示的問題已修復。試圖找出現在,如何處理/ posts?tag_name = foobar請求,以便只顯示具有該標記的帖子。
更新代碼: 帖子顯示正確無重複。標記計數工作正常,標記組顯示爲鏈接並將tag_name傳遞到/ posts?tag_name = new。我只是不能得到鏈接觸發只顯示這些標籤的帖子的顯示。僅供參考,帖子在標籤表中由post_id標識。
PostsController
def index
@tag_counts = Tag.count(:group => :tag_name, :order => 'updated_at DESC', :limit => 10)
@posts = Post.all(:order => 'created_at DESC').paginate :page => params[:page], :per_page => 4,
:conditions => (params[:tag_name] ?
{ :tags => {:tag_name => params[:tag_name]} } : {}
)
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @posts }
format.json { render :json => @posts }
format.atom
end
end
查看
Recently Used Tags
<table>
<% @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 %>
</table>
<br>
<a href="/tags">click to view all tags >></a>
</div>
該屏幕截圖可以幫助(請注意這是剛剛工作的功能真的很醜),因爲它表明,在新的只有1個標籤,但當URL被擊中時,仍然顯示所有帖子。
地址後顯示,但我也試圖分組,鏈接到搜索,並通過索引方法@post變量顯示標籤組以及。 – bgadoci 2010-04-15 16:52:58
看到我編輯的答案:] – 2010-04-15 17:29:54
好吧,這是一種工作,因爲重複消失了。當輸入URL/posts?tag_name = new時,這是打嗝,它不會僅顯示帶有該標記的帖子。有任何想法嗎? – bgadoci 2010-04-15 20:10:21