1

I have model named TMem:

class TMem < ActiveRecord::Base
  # attr_accessible :title, :body
   def expense
      'Test'
   end 
end

When I try to execute the command in rails c:

TMem.find(1).expense

I got the error :

NoMethodError: undefined method `expense' for #<TMem:0xb5fb97c>

Why I got this error?

4

1 回答 1

1

在 Rails 模型中定义新方法后,您应该重新启动控制台

或者只是使用执行重新加载reload!

reload!仅在控制台环境中重新加载最新代码。它不会重新初始化现有对象。意味着如果您已经创建了任何对象,它不会在代码更改时更新其属性,但如果您创建一个新对象,它将适用于新属性

于 2013-11-06T11:27:53.373 回答