Это в некотором роде вопрос философии, и поскольку он граничит с «мнением», однако я чувствую, что где-то здесь есть хороший трактат об отделении бизнес-логики от данных.
Шаблоны должнысодержать данные.Эти данные могут быть не статичными, когда вы будете использовать условные шаблоны.Возможно, ваша страница будет выглядеть по-другому, если к ней обращается неаутентифицированный пользователь или ваша страница может позволить пользователю изменять форматы даты и т. Д.
Внутренние функции должны выполнять работа .Это бизнес-логика, и условия здесь должны отражать это.Было бы неуместно запрашивать сеанс пользователя, чтобы увидеть его локаль и изменить способ форматирования данных здесь - это не бизнес-логика, а логика пользовательского интерфейса.Здесь условия должны влиять на поиск в базе данных, вызовы API или другие вещи, которые могут иметь более серьезные побочные эффекты, чем «Как пользователь воспринимает представленные данные».