【发布时间】:2020-02-19 00:04:36
【问题描述】:
在 Rails 5.2.3 中,我需要渲染一个带有可选块的部分。
# users/_user.html.erb
...
<% if block_given? %>
<%= yield %>
<% else %>
<h1>Goodbye world</h1>
<% end %>
...
但是,无论我选择使用哪个版本,block_given? 都会返回 true:
<%# Version 1 - block_given? returns true %>
<%= render partial: "users/_user" do %>
<h1>hello world</h1>
<% end %>
<%# Version 2 - block_given? also returns true %>
<%= render partial: "users/_user" %>
这是怎么回事?为什么会这样?
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-5 erb