Die Instanziierung einer Klasse in Ruby und Auffüllen Instanz-variable

Habe ich das Gefühl, mir fehlt etwas sehr einfach hier. Ich habe eine Klasse, die verbunden ist zu einem externen service. Ich möchte zum instanziieren, indem Sie entweder den Aufruf einer create-Methode oder eine Methode finden. Beide Methoden füllen einer Instanz-variable "@node" mit einem hash, indem entweder ein Knoten oder finden es.

Habe ich

class GenreInfluence

@@neo ||= Neography::Rest.new()
attr_accessor :node

def initialize
end

def self.create
    @node = @@neo.create_node
    self.new
end

def self.find(node_id)
    @node = @@neo.get_node(node_id)
    self.new
end

def get_hash
  @node
end

Wenn ich kommentiere, was Los ist, ich es sehen kann, ist die Erstellung der Klasse und immer den richtigen hash zurück, aber:

theInstance = GenreInfluence.find(20)
theInstance.get_hash

Nur gibt es nil zurück. Warum ist der hash nicht gespeichert werden in die Instanz-variable"!?

InformationsquelleAutor Samuel | 2011-03-04
Schreibe einen Kommentar