未定义的局部变量或自己模型中的方法

时间:2018-04-07 05:58:57

标签: ruby-on-rails class methods model

我正在尝试在名为“ingredient_name”的模型中创建一个方法,但我不确定如何在它自己的模型类中定义“成分”。

未定义的局部变量或#

的方法“成分”
 class Ingredient < ApplicationRecord
    belongs_to :user
    validates :name,  presence: true
    def ingredient_name
        ingredient.try(:name)
    end
end

2 个答案:

答案 0 :(得分:1)

像这样使用

def ingredient_name
    self.try(:name)
end

答案 1 :(得分:0)

尝试使用以下方法更改您的方法:

def ingredient_name
    self.name
end

根据您提供的代码,ingredient_name方法是一种实例方法。实例方法是为您的实例找到名为ingredient的字段。