Named scopes w ActiveRecord 3

Posted by wijet
on Thursday, April 02

Od railsów 2.1 możemy korzystać z dobrodziejstw named_scopes, za pomocą których możemy definiować w łatwy sposób findery. Mowiąc prościej, możemy budować zapytania do bazy danych. Nie są to jednak zwykłe metody ktore wyszukują nam coś w bazie, zamiast prostego zbioru wyników, zwracany jest scope (zakres).

Aby rzucić więcej swiatła na sprawę, zacznijmy od przykładu:

class Product < ActiveRecord::Base
  named_scope :available, :conditions => "amount > 0"
  named_scope :featured, :conditions => {:featured => true}
end

Symbole w Ruby 3

Posted by wijet
on Tuesday, August 07

W dobrze napisanym kodzie Ruby często możemy spotkać symbole, nic dziwnego – w wielu miejscach użycie symboli zamiast stringów wpływa pozytywnie na wydajności programu a także należy do dobrego stylu programowania. Na początku przygody z Rubim zrozumienie symboli może sprawić kłopot.

Postawy YAML’a, czyli łatwe serializowanie i deserializowanie obiektów 3

Posted by wijet
on Wednesday, July 11

YAML jest prostym językiem służącym do opisu danych. Obiekty są przedstawiane za pomocą czystego tekstu, łatwego do czytania i edycji. YAML pozwala na składowanie zarówno pojedynczych obiektów jak i różnych zbiorów obiektów. Istnieje wiele implementacje YAML’a m.in. dla php, python, ruby, pozwala to na przenoszenie danych pomiędzy aplikacjami napisanymi w rożnych językach. Dzięki formatowi plików YAML nadaje się przede wszystkim do przechowywania konfiguracji, logów a także tworzenia prostych raportów.

Markaby - pisz w Ruby, wyświetlaj html 4

Posted by wijet
on Thursday, May 03

Pisząc mój serwer http w rubym, chciałem skorzystać z jakiegoś systemu szablonów, wybrałem ERB który jest chyba najprostszy i był najbliżej, bo w standardowej bibliotece języka. Pliki templatow ERB to wymieszany HTML z kodem ruby umieszczonym miedzy znacznikami, który następnie jest wykonywany. Taki format templatow jest średnio czytelny. Przeglądając kod micro frameworka Camping’a natknąłem się na "Markaby":http://code.whytheluckystiff.net/markaby/ (Markup as Ruby), czyli szablony w czystym ruby!.