如何从Rails中的模型中获取关联模型的属性

时间:2010-12-28 21:15:08

标签: ruby-on-rails

我想基本上在第一个模型中的相关模型中创建属性的别名。这是我的模特:

class Ingredient < ActiveRecord::Base
    belongs_to :tag
end

class Tag < ActiveRecord::Base
    has_many :ingredients
end

标签表有一个名为“名称”的列。我希望能够调用ingredient.name来获取ingredient.tag.name。我尝试在Ingredient中为“name”创建getter / setter方法,但我不知道如何获取Tag的“name”属性。

2 个答案:

答案 0 :(得分:3)

class Ingredient < ActiveRecord::Base
    belongs_to :tag

    def name
      tag.name
    end
end

答案 1 :(得分:1)

等于阿卜杜拉答案的单行将是delegate

delegate :name, :to => :tag

如果你关心在一条线上做所有事情。