将变量传递给partial

时间:2016-09-30 18:54:10

标签: ruby-on-rails

我想为每个优惠提供部分内容。 我有以下代码:

报价/ index.html.haml:

- @offers.each do |o|
  = render 'offershort', locals: {offer: o}

提供/ _offershort.html.haml:

= link_to offer.name, offer_path
= offer.description

我收到错误:

  

未定义的局部变量或方法`offer'

如何正确地做到这一点?

1 个答案:

答案 0 :(得分:6)

如果您使用简短版本,则需要删除locals选项

= render 'offershort', offer: o

,否则

= render partial: 'offershort', locals: { offer: o }