我正在为部分视图编写一些Rails代码,我希望它只显示一个注释字段,如果有人已经登录到这里的网站。
如果该网页尚未被该网站的成员查看,则应传入shared/comment_not_logged_in
片段。
但是,我完全不知道为什么我不能运行相同的检查以确定页面是否应该将类属性“missing_your_voice”添加到封闭的div元素:
<li class="user_submission_form bubble comment_form <% "missing_your_voice" if not current_user %>">
<% if current_user %>
<%= image_tag(current_user.avatar(:comment), :class => "profile_pic") %>
<% form_for [parent, Comment.new] do |f| %>
<%= render "comments/form", :f => f %>
<% end %>
<% else %>
<%= render :partial => 'shared/comment_not_logged_in' %>
<% end %>
</li>
同样的习语,"missing_your_voice" if not current_user
返回irb中的字符串,也是控制台调试器中的字符串。
我在这里做错了什么?
答案 0 :(得分:2)
你忘了=
。将<%
替换为<%=
,以便获得:
<%= "missing_your_voice" if not current_user %>
请记住,<% ... %>
只会运行Ruby代码,但不会显示任何内容。使用<%= ... %>
将运行代码,显示表达式的结果。
答案 1 :(得分:0)