ненужная информация отладки в представлении рельсов - PullRequest
0 голосов
/ 16 октября 2010

В моем приложении rails я отображаю некоторые сообщения, используя вложенные циклы. В режиме разработки после завершения каждого цикла пост-объекты выводятся в виде обычного текста в определенной последовательности Так это выглядит так: alt text

Это ненужно и немного противно. Что вызывает такое поведение и как его отключить? Изменить: вот цикл:

= @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}"}

Ответы [ 2 ]

4 голосов
/ 16 октября 2010

По умолчанию это не так, вы куда-то явно помещаете туда объекты Post.

Полагаю, у вас есть дополнительный = вход <% @posts.each do |post| %> (т. Е. Вы используете <%= ... %>).each метод возвращает саму коллекцию (для возможного связывания, как в jquery), и нет смысла печатать ее.

Если у вас есть путаница в разнице,
<% .. %> означает «выполнить это»
<%= .. %> означает «выполнить это и вывести возвращаемое значение на странице»

1 голос
/ 17 мая 2013

Вместо использования = @ post используйте - @ post

...