1

我有一个自定义操作和视图。我建议从我的操作中获取一个集合并通过each. 这是我的看法:

=  @games.each do |g|
.well
    %h2= link_to g.name, game_path(g)
    = link_to (image_tag g.image.url(:medium), class: 'img-responsive'), game_path(g)

这是我的行动:

def unproved_games
  @games = Game.where(status: false)
end

它的渲染很好,但最后我在我的页面上得到了这个: 垃圾

我该如何解决?

4

1 回答 1

0

=HAML 中的标记意味着在页面上创建一些输出(类似于<%= %>在 ERB 中。each方法返回一个集合,它被调用。这就是为什么在您的页面上您会看到类似于 的输出@games.to_s。只需将您的第一个替换=-它就会不向页面输出。此外,我还对您的代码进行了一些额外的重构:

- @games.each do |g|
  .well
    %h2= link_to g.name, g
    = link_to g do
      = image_tag g.image.url(:medium), class: 'img-responsive')
于 2018-05-17T14:09:50.673 回答