Rails:模型实例方法还是辅助方法?

时间:2011-07-15 23:41:14

标签: ruby-on-rails ruby ruby-on-rails-3 rails-activerecord

按照惯例,是否应将以下内容定义为我的模型的实例方法或辅助方法?

# 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

非常感谢。

2 个答案:

答案 0 :(得分:9)

使用第一个(保留在模型中),也因为您可能想要做其他事情,例如组合索引:)

答案 1 :(得分:5)

与您的模型直接相关的所有内容都应保留在您的模型中。

这样,你就可以保持连贯的逻辑和测试。