Допустимо ли сохранять логику в шаблонах представления? - PullRequest
4 голосов
/ 22 ноября 2010

Допустимо ли сохранять логику в шаблонах представления (в частности, в терминах MVC и Rails)?Есть ли способ избежать чего-то подобного?

<% if current_user %>
  Welcome, <%= current_user.name %>.
  <%= link_to "Sign Out", signout_path %>
<% else %>
  <%= link_to "Sign in with Twitter", "/auth/twitter" %>
<% end %>

Или я изобретаю "велосипед", и верхняя часть идет хорошо?

1 Ответ

12 голосов
/ 22 ноября 2010

Конечно, все сводится к предпочтениям.Я бы сказал, что вышесказанное вполне приемлемо.Простые условия и циклы довольно стандартны в представлении.Я бы сказал, что нужно избегать назначения переменных, использования моделей для данных, которые вы еще не собрали, и т. Д.

Если вам не нужно ничего подобного, вы всегда можете создать помощников.Такие вещи должны быть где-то.

edit:

Хорошее эмпирическое правило гласит: "Этот код имеет непосредственное отношение к презентации?"Я бы сказал, что ответ по вашему делу - да.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...