Por que o ActiveRecord não é inteligente o suficiente para saber que o object_id do pai deve ser igual ao object_id do pai de seus filhos?

  @father = Hierarchy.find(:first, :conditions => ['label = ?', 'father'])

  @father.children.each do |child|
    puts @father.object_id == child.parent.object_id
  end

Eu teria pensado que os resultados aqui seriam todostrue.

Em vez disso, eles são todosfalse.

Por que o ActiveRecord funciona dessa maneira ao invés de reconhecer que esses são os mesmos objetos Ruby?

questionAnswers(5)

yourAnswerToTheQuestion