Object#andandandand.rubyforge.org
Praktisches gem von Reg Braithwaite mit dem Methoden-Aufrufe auf nil-Objekten abgefangen werden können.
# Ohne andand: @user = User.find(1) @address = @user ? @user.address : nil # Mit andand: @address = User.find(1).andand.address
Enthält außerdem noch tap zum leichten debugging:
# Original: p [1, 2, 3].reverse.map {|x| x**2 } # Debug durch Auseinanderrupfen und Zwischenvariable: bla = [1, 2, 3].reverse p bla p bla.map {|x| x**2 } # Debug mit tap: p [1, 2, 3].reverse.tap {|d| p d }.map {|x| x**2 }
Einfach sudo gem install andand und
require 'rubygems' require 'andand'
in den Code.
Ähnlich praktisch ist der tee-Befehl auf der Commandline:
ps aux | tee p.txt | more
ps aux gibt alle laufenden Prozesse aus, tee p.txt schreibt die Ausgabe von ps aux in die Datei p.txt und gibt sie weiter an more.
Update:
Rails 2.3 hat andand-ähnliche Funktionalität schon eingebaut: try
@address = User.find(1).try(:address)
Mehr dazu: ozmm.org/posts/try.html
Neue Kommentare
Wie soll man sich die entstehung des Bildes vorstellen?
Die Frau hat auf dem Sofa gelegen.
Währenddessen hat der Maler die abstrakte Kunst produziert.
Dann sieht sich das Modell das Bild an, das aber nur ein "Köder" für das eigentliche Bild war, das er dann noch schnell malt.
Die springende textarea tut dies nicht mehr im neuen Design. Hab ich bald fertig.
--wait=5 // wartet 5 Sekunden zwischen jedem Request (empfolen)
--random-wait // variert die Wartezeit (damits nicht so auffällig ist ;)
--limit-rate=300k // limitiert Bandbreite auf 300KB/s
[P.S.: Die Textarea fliegt immer noch ganz nach unten (unter die Tags) bei schmalen Browserfensterchen.]
http://selflinux.org/selflinux/html/vim.html
Merkwürdig. Der Link ist eigentlich korrekt, aber wenn ich draufklicke, werde ich nach
http://navigationshilfe1.t-online.de/dnserror?url=http://www.cosolit.deselflinux/
weitergeleitet.