Есть ли какой-либо путь в Ruby для класса, чтобы узнать, сколько его экземпляров существует и можно ли их перечислить?
Вот пример класса:
class Project
attr_accessor :name, :tasks
def initialize(options)
@name = options[:name]
@tasks = options[:tasks]
end
def self.all
# return listing of project objects
end
def self.count
# return a count of existing projects
end
end
Теперь я создаю объекты проекта этого класса:
options1 = {
name: 'Building house',
priority: 2,
tasks: []
}
options2 = {
name: 'Getting a loan from the Bank',
priority: 3,
tasks: []
}
@project1 = Project.new(options1)
@project2 = Project.new(options2)
Я бы хотел, чтобы методы класса, такие как Project.all
и Project.count
, возвращали список и количество текущих проектов.
Как это сделать?