Удалить логику из представлений Rails - PullRequest
0 голосов
/ 04 апреля 2019

Есть ли способ очистить свои представления, когда речь идет о приведенном ниже примере, например, ссылки пользователей?Я помню, как читал в книге, удалите операторы if и else, поместите их в контроллер или что-то в этом роде.Не могу найти его в данный момент.

<% if current_user %>
    <%= link_to edit_post_path(blog) do %>
        <i class="fas fa-edit"></i> Edit Post
    <% end %>
    <%= link_to blog_post_index do %>
        <i class="fas fa-trash"></i> Delete Post
    <% end %>
<% end %>

Ответы [ 2 ]

2 голосов
/ 04 апреля 2019

Для такого кода вы можете использовать помощники вида rails.

См ..

https://api.rubyonrails.org/classes/ActionController/Helpers.html

0 голосов
/ 04 апреля 2019

Или создайте общую папку и поместите код в шаблон.

Нравится: app> views> shared> links> _user_link.html

Тогда позвоните в ваши взгляды:

= render "shared/links/user_link"

Вы также можете проанализировать дополнительную информацию, например:

= render "shared/links/user_link", f: f
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...