Закон Деметры

Недавно я опубликовал вопрос на stackoverflow, где я сделал что-то для эффекта

@period_registration.period.event

Тем не менее, было предложено сделать что-то вроде следующего:

def event
  period.event
end

@period_registration.event

Мой общий смысл состоит в том, что это кажется немного жестким. Глядя на это предыдущее сообщениеКак мне применить закон Деметры к этому? показывает, как тяжело это может стать, если вы сделали это для каждой ассоциации.

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

Допустим, я хотел бы повлиять на это: @ period_registration.event.city, где city является атрибутом события, а не отдельным объектом, также нарушает LoD или мне нужно написатьANOTHER метод, чтобы я мог сделать: @ period_registration.city

Ответы на вопрос(1)

Ваш ответ на вопрос