Rem*_*min 1 ruby views ruby-on-rails
我在我的Rails视图/ comments/_comments部分中有这个代码:
<%= render :partial => 'comments/#{@type}' %>
Run Code Online (Sandbox Code Playgroud)
此外,我@type通过本地传递变量,但我得到:
Missing partial comments/#{@type}
Run Code Online (Sandbox Code Playgroud)
如果我用以下内容替换它,它可以工作:
<%= render :partial => 'comments/post' %>
Run Code Online (Sandbox Code Playgroud)
所以@type不在我的观点中评估.
有人可以解释一下吗?
Ruby中的字符串插值仅适用于使用双引号(")定义的字符串.所以这应该有效:
<%= render :partial => "comments/#{@type}" %>
Run Code Online (Sandbox Code Playgroud)
或者,如果要插入实例变量的值,则适用的简写:
<%= render :partial => "comments/#@type" %>
Run Code Online (Sandbox Code Playgroud)