Подтвердить что ты не робот

Rails: метод экземпляра модели или вспомогательный метод?

По соглашению, должно ли быть определено следующее как метод экземпляра моей модели или вспомогательный метод?

# app/models/user.rb
class User < ActiveRecord::Base
  def full_name
    "#{first_name} #{last_name}"
  end
end

или

# app/helpers/users_helper.rb
module UsersHelper
  def full_name
    "#{@user.first_name} #{@user.last_name}"
  end
end

Большое спасибо.

4b9b3361

Ответ 1

Перейдите к первой (сохранить в модели), также потому, что вы можете захотеть делать другие вещи, например, комбинированные индексы:)

Ответ 2

Все, что напрямую связано с вашей моделью, должно оставаться в вашей модели.

Таким образом, вы сохраняете согласованную логику и тесты.