Datamapper,定义自己的对象方法,如何?

Dub*_*arf 3 ruby database datamapper

所以我要说我有一个类如下

class List
  include DataMapper::Resource
  property :id, Serial  
  property :username, String

  def self.my_username
    return self[:username]
  end
end

list=List.create(:username=>,'jim')
list.my_username
Run Code Online (Sandbox Code Playgroud)

当我运行它时,它告诉我无法找到该方法,并且在更多的调查中,您只能定义类方法(而不是对象方法),并且该类方法无法访问对象数据.

有没有办法将这些方法作为对象方法包含在内并获取对象数据的访问权限?我正在使用Ruby 1.8.6和最新版本的datamapper.

shi*_*ara 7

避免所有自我,它变成InstanceMethod:

class List
  include DataMapper::Resource
  property :id, Serial  
  property :username, String

  def my_username
    return self[:username]
  end
end

list=List.create(:username=>'jim')
list.my_username
Run Code Online (Sandbox Code Playgroud)