2012-04-28 4 views
0

У меня есть модель под названием User, а другая - Run. У каждого пользователя много прогонов. Длительность и расстояние - это атрибуты Run.Какой лучший выбор для этой модели рельсов?

Я хочу отобразить на странице пользователя сумму расстояния и длительности его прогонов.

Я не уверен, должна ли эта сумма, т. Е. Общая дистанция и общая продолжительность, быть атрибутами пользователя, или если она должна быть рассчитана на ViewProfileController, чтобы отобразить ее в своем профиле.

Какова была бы правильная практика?

ответ

4

Сумма пользовательских прогонов должна быть методом в пользовательской модели, поскольку она специфична для каждого пользователя.

Также рекомендуется использовать тощие контроллеры и иметь толстые модели.

+1

+1, добавит больше объяснений: потому что, если вы хотите эти значения в другом представлении/контроллере/работнике, вам не нужно их снова вычислять, они являются своего рода атрибутом пользователя. Например, вы хотите отправить специальное электронное письмо для пользователей с дистанционным_рундистом> 1000, а не выполнять все вычисления, просто используйте модель User для получения этих пользователей. –