渲染的部分不可见?

时间:2019-03-13 19:45:53

标签: ruby-on-rails public-activity

因此,我要通过PublicActivity将局部变量传递给局部,然后尝试在users/show.html.erb文件上呈现局部,就像这样:

<% @activities.each do |act| %>
  <% render partial: "posts/#{act.trackable.check_type}", 
  locals: { tweet: tweet.trackable }%>
<% end %>

但是这没有结果。我一点都看不到。不可见向下传递的所有数据都不为零,通过byebug和Rails控制台再次确认。

有什么想法会导致局部的隐形?

1 个答案:

答案 0 :(得分:4)

<% %>执行ruby代码,但不打印。

<%= %>将结果打印到erb文件中。

因此,代码应为:

<%= render partial: "posts/#{act.trackable.check_type}", 
    locals: { tweet: tweet.trackable }%>

更多:
<%# %>:用于在erb中发表评论