2010-10-15 39 views
0

在我的rails應用程序中,我使用嵌套循環顯示一些帖子。在開發模式下,每個循環完成後,對象按順序轉換爲純文本。所以它看起來像這樣:alt text在rails視圖中不必要的調試信息

這是沒有必要的,有點討厭。什麼導致了這種行爲,以及如何禁用它?編輯:這裏是循環:

= @posts.each do |post| 
    .post 
    %p= post.text 
    .replies 
     = if post.children != 0 
     = link_to "#{post.children} replies", '#',:toggled=>'no',:id=>"parent#{post.id}",:class=>"viewreplies",:rel=>post.children 
     %a.reply{:href => '#',:id => "reply#{post.id}",:rel => "thread#{post.thread}",:toggled=>'no' } Reply 
    %form{:method=>:post, :action => '/create', :class => 'replyform' } 
    = token_tag 
    %div{:id=>"replies#{post.id}"} 

回答

4

這不是默認情況下,你在那裏顯式地在某處丟棄Post對象。

我的猜測是你有額外的=登錄<% @posts.each do |post| %>(即,你使用<%= ... %>)。 each方法返回集合本身(用於可能的鏈接,就像在jquery中),打印它沒有多大意義。

如果您有區別的混淆,
<% .. %>手段「執行這個」
<%= .. %>手段

+0

好吧,我用哈姆。我編輯我的問題,包括循環。 – herpderp 2010-10-15 23:48:44

+0

@herpderp我不使用haml,但我懷疑'='符號與rails中的意思相同。嘗試刪除它?此外,[維基百科文章](http://en.wikipedia.org/wiki/Haml)以沒有它的「每個」爲例。 – 2010-10-15 23:53:42

+0

=在haml中是必需的,它表示紅寶石代碼。沒有它haml將代碼視爲純文本。使用 - 也適用,但它不能解決我的問題。 – herpderp 2010-10-15 23:55:02

1

「頁面上執行此和打印返回值」,而不是使用= @後使用 - @後