Скрыть кнопку «Опубликовать» от не администраторов? - PullRequest
0 голосов
/ 05 мая 2011

Я пытаюсь скрыть эту галочку публикации от не-администраторов. Я использовал плагин CanCan и установил правильные разрешения, но борюсь с синтаксисом кода. Я использовал <% = если можно? : publish, article%> в частичном представлении views / article / _form.html.erb, но это не работает?

<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>

enter image description here

1 Ответ

2 голосов
/ 05 мая 2011

Вы должны использовать <%, а не <%=. Кроме того, оператор 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>
...