Lokale VariableWarum können wir nicht auf lokale Variable innerhalb der Rettung zugreifen?
begin
transaction #Code inside transaction
object = Class.new attributes
raise unless object.save!
end
rescue
puts object.error.full_messages # Why can't we use local varible inside rescue ?
end
Instanz Variable
begin
transaction #Code inside transaction
@object = Class.new attributes
raise unless @object.save!
end
rescue
puts @object.error.full_messages # This is working fine.
end
Die erste funktioniert für mich, ob ich auf die Variable innerhalb oder außerhalb des 'beginnen ... rescue' zuweisen Block. –
@Antal Ich benutze Transaktion innerhalb beginnen Block und ich habe Objekt innerhalb der Transaktion definiert. Kann es das Problem verursachen? Ich habe meine Frage aktualisiert. –
Wie lokal meinst du? – xtofl