我试图从非管理员用户隐藏此发布'滴答框'。我使用CanCan插件并设置了正确的权限,但我正在努力使用代码语法。我用<%= if if can? :views / articles / _form.html.erb partial中的:publish,article%> 但它不起作用?
<div class="field">
<%= f.label :tag_names, "Tags" %> <br />
<%= f.text_field :tag_names %>
</div>
<div class="field">
<%= check_box("article", "published" ) %>
**<%= if can? :publish, @article %>**
<%= "Publish article" %>
</div>
<div class="actions">
<%= f.submit %>
</div>
答案 0 :(得分:2)
您应该使用<%
,而不是<%=
。此外,if
语句位于错误的位置,并且没有结束end
语句。这是正确的代码:
<div class="field">
<%= f.label :tag_names, "Tags" %> <br />
<%= f.text_field :tag_names %>
</div>
<% if can? :publish, @article %>
<div class="field">
<%= check_box("article", "published" ) %>
<%= "Publish article" %>
</div>
<% end %>
<div class="actions">
<%= f.submit %>
</div>