Rails - 查看对象迭代问题

时间:2011-01-23 14:07:20

标签: ruby-on-rails view controller

当我在视图中迭代一个对象时,它也会自己渲染对象。

我有:

@portfolio_queued = Artist.where(:state => 'portfolio_queued')

= for artist in @portfolio_queued
  %p
    = "#{artist.name}"
    %br
    = "#{artist.state}"

它正在呈现:

mauko
portfolio_queued

quiroga
portfolio_queued

quiroga
portfolio_queued
#<Artist:0x10652ca90>#<Artist:0x1065296b0>#<Artist:0x106529340>

任何帮助?

2 个答案:

答案 0 :(得分:1)

好的,所以只需要替换

= for artist in @portfolio_queued

- for artist in @portfolio_queued

诀窍。

答案 1 :(得分:0)

也许这只是个人偏好,但我发现很难阅读并将其写为

= @portfolio_queued.each do |artist| 
  %p
     artist.name 
     %br
     artist.status

此外,再次个人偏好 - 使用段落标签作为不是文本块的东西被认为是糟糕的SEO / CSS; span,div或table单元格可能更好。