ruby on rails. wprowadzenie. wydanie ii scan, ebooki-ksiazki
[ Pobierz całość w formacie PDF ]
Ruby on Rails. Wprowadzenie. Wydanie II Autor: Bruce Tate, Lance Carlson, Curt Hibbs ISBN: 978-83-246-2210-8 Tytu³ orygina³u Format: B5, stron: 192 Poznaj Ruby on Rails i twórz potê¿ne aplikacjeinternetowe w zaledwie kilka dni • Jak budowaæ dynamiczne strony, nastawione na u¿ytkownika? • Jak rozwi¹zaæ problemy z wydajnoœci¹ baz danych? • Jak sprawnie i efektywnie korzystaæ z platformy Ruby on Rails? Dlaczego masz wybraæ Ruby on Rails? G³ównie dlatego, ¿e jest to wyj¹tkowe narzêdzie, które umo¿liwia budowê aplikacji internetowych ka¿dego typu (w tym portali spo³ecznoœciowych, witryn e-commerce, oprogramowania do zarz¹dzania oraz tworzenia statystyk) w zaledwie kilka dni! A to wszystko dziêki Rails — doskonale wyposa¿onemu frameworkowi do tworzenia aplikacji internetowych opartych o bazy danych — który oferuje œrodowisko z wykorzystaniem jêzyka Ruby. Zaœ ten jêzyk programowania charakteryzuje siê niezwyk³ym po³¹czeniem cech: jest równoczeœnie prosty, elegancki i elastyczny, co pozwala dowolnie modyfikowaæ jego czêœci. Ksi¹¿ka „ Ruby on Rails. Wprowadzenie. Wydanie II ” zawiera szczegó³owe porady i wskazówki dotycz¹ce instalacji oraz korzystania z Rails 2.1, a tak¿e jêzyka skryptowego Ruby. W podrêczniku znajdziesz nie tylko wyjaœnienia odnoœnie sposobu dzia³ania Rails, ale równie¿ opis kompletnej aplikacji. Dziêki temu przewodnikowi dowiesz siê, w jaki sposób wspó³pracuj¹ ze sob¹ wszystkie aplikacje tworz¹ce szkielet Rails, a ponadto nauczysz siê sprawnie korzystaæ z dokumentacji oprogramowania i tworzyæ zaawansowane aplikacje znacznie szybciej ni¿ dotychczas. • Uruchamianie i organizacja Rails • Budowanie widoku • Rusztowania, REST i œcie¿ki • Klasy z³o¿one • Rozbudowywanie widoków • Zarz¹dzanie uk³adem strony • Arkusze stylów • Tworzenie w³asnych funkcji pomocniczych • Testowanie i debugowanie • Tworzenie nowej aplikacji Rails Wyczerpuj¹ce i przyjazne wprowadzenie w Ruby on Rails Spis treści Przedmowa ............................................................................................................................... 5 1. Zaczynamy — wprowadzenie do Rails ........................................................................ 9 Uruchamianie Rails 10 Organizacja Rails 12 Serwer WWW 13 Tworzenie kontrolera 16 Budowanie widoku 18 Wiązanie kontrolera z widokiem 20 Co się dzieje za kulisami 22 Co dalej 23 2. Rusztowania, REST i ścieżki ........................................................................................ 25 Wprowadzenie do Photo Share 25 Przygotowanie projektu i bazy danych 27 Generowanie rusztowania zasobów 28 Ścieżki zgodne z REST 32 Uzupełnianie rusztowania 39 Co dalej? 40 3. Podstawy Active Record ............................................................................................. 41 Podstawy mechanizmu Active Record 41 Podstawowe klasy Active Record 46 Atrybuty 48 Klasy złożone 50 Zachowania 55 W kolejnym rozdziale 60 3 4. Relacje w Active Record .............................................................................................. 61 belongs_to 61 has_many 64 has_one 66 has_and_belongs_to_many 67 acts_as_list 70 Drzewa 72 O czym nie powiedzieliśmy 75 Wybiegając w przyszłość 76 5. Rozbudowywanie widoków ....................................................................................... 77 Obraz całości 77 Oglądanie rzeczywistych fotografii 79 Szablony widoków 79 Określanie domyślnej strony głównej 84 Arkusze stylów 85 Hierarchiczne kategorie 88 Określanie stylów dla pokazów slajdów 93 6. Ajax .............................................................................................................................. 99 W jaki sposób Rails implementuje Ajax 99 Odtwarzanie pokazów slajdów 100 Zmienianie porządku slajdów metodą przeciągnij i upuść 103 Przeciąganie i upuszczanie wszystkiego (lub prawie wszystkiego) 107 Filtrowanie według kategorii 114 7. Testowanie ................................................................................................................. 119 Słowo wprowadzenia 119 Mechanizm Test::Unit języka Ruby 120 Testowanie w środowisku Rails 123 Asercje i testy integracyjne 140 Podsumowując 142 A Instalowanie Rails ..................................................................................................... 145 B Krótki leksykon Rails .................................................................................................. 151 Skorowidz ............................................................................................................................. 183 4 | Spis treści ROZDZIAŁ 2. Rusztowania, REST i ścieżki Przez stulecia rusztowania pomagały budowniczym w budowie i wykańczaniu wznoszonych budynków. Programiści również korzystają z tymczasowego kodu rusztowania tworzącego wstępne ramy i podstawowy mechanizm aplikacji do czasu, aż gotowy będzie właściwy kod aplikacji. Rails automatyzuje proces tworzenia rusztowań bardzo ułatwiając budowanie apli- kacji we wstępnej fazie. W rozdziale 1. pokazaliśmy, jak Rails wykorzystuje tablicę z parametrami do przekształcenia prostego wywołania Rails w wywołanie akcji w kontrolerze. Zbudowaliśmy w nim również bardzo proste widoki. W tym rozdziale rozpoczniemy budowę bardziej zaawansowanej apli- kacji, o nazwie Photo Share, która będzie mogła być użyta do zarządzania fotografiami. Za- stosujemy rusztowania do zbudowania podstawowego szablonu zawierającego model korzy- stający z bazy danych, kontroler oraz widok. Niejako przy okazji przedstawimy podstawy kilku najważniejszych funkcji Rails, takich jak: • Migracje . Ta funkcja obsługi bazy danych pomaga programistom w wieloetapowym two- rzeniu modelu bazy danych, zarządzaniu różnicami w schematach używanych we wszyst- kich naszych środowiskach. Migracje korzystają z kodu Ruby zamiast kodu SQL specy- ficznego dla bazy danych. • REST oraz zasoby . Rails korzysta intensywnie ze stylu komunikacji internetowej o nazwie REST, czyli Representational State Transfer. Taka strategia komunikacji wykorzystującej HTTP definiuje zasoby internetowe, w których każde polecenie URL lub HTTP wykonu- je jedną z operacji CRUD ( Create , Read , Update , Delete — tworzenie, odczyt, modyfikacja i usuwanie) na zasobie. W Rails 2 każdy kontroler jest zasobem REST. • Ścieżki nazwane . Dla każdego zasobu Rails tworzy ścieżki nazwane, które odwzorowują standaryzowane , eleganckie adresy URL na predefiniowane akcje kontrolera. W wyniku tego potrzeba mniej kodu i uzyskujemy lepszą spójność pomiędzy naszymi aplikacjami. Przyjrzyjmy się dokładniej aplikacji Photo Share. Następnie szybko zbudujemy podstawy tej aplikacji. Na koniec tego rozdziału będziemy mieli prostą aplikację pozwalającą zarządzać zdjęciami, pokazami slajdów, slajdami i kategoriami. Wprowadzenie do Photo Share W dalszej części tej książki będziemy tworzyć jedną aplikację o nazwie Photo Share, umożli- wiającą wymianę zdjęć pomiędzy jej użytkownikami. Aplikacja ta będzie korzystała z bazy da- nych. Rozpoczniemy od poniższych prostych wymagań nazywanych scenariuszami użytkownika : 25 • Umieszczanie zbioru zdjęć w sieci WWW w taki sposób, aby inni użytkownicy mogli je zobaczyć. • Organizowanie zdjęć w kategoriach. • Tworzenie i przeglądanie pokazów slajdów budowanych z dostępnych zdjęć. Każde z tych wymagań odnosi się do innej części aplikacji. Przyjrzyjmy się dokładniej elemen- tom Rails wymaganych przez te scenariusze. Definiowanie zasobów Gdy analizujemy naszą aplikację, najlepiej na początku myśleć o niej jak o zasobach. Rails 2 jest środowiskiem tworzenia oprogramowania ukierunkowanym na zasoby, więc tworzenie zwykle rozpoczyna się od zdefiniowania zasobów. Praktycznie rzecz ujmując, zasób jest jed- nostką internetową, która posiada metody do reprezentowana tej jednostki i zarządzania nią. Mówiąc jeszcze praktyczniej, typowy zasób Rails jest modelem korzystającym z bazy danych, kontrolerem zarządzającym tym modelem oraz widokiem, który prezentuje jeden lub więcej modeli naszym użytkownikom. Po zdefiniowaniu wymagań wstępnych następnym zadaniem jest określenie zasobów wymaganych przez naszą aplikację. Spójrzmy na listę scenariuszy i skoncentrujmy się na rzeczownikach. Kilkoma oczywistymi kandydatami na zasoby Rails są zdjęcia , slajdy , pokazy slajdów oraz kategorie . Ujawniają się również niektóre relacje pomię- dzy nimi: • Kategoria zawiera wiele zdjęć , a zdjęcie może mieć jedną lub więcej kategorii . • Kategoria może mieć inną kategorię . • Pokaz slajdów zawiera wiele slajdów . • Slajd zawiera jedno zdjęcie . Prosty diagram, taki jak na rysunku 2.1, pomaga pokazać zasoby aplikacji oraz relacje między nimi. W przypadku relacji „jeden do wielu” korzystamy ze strzałki oznaczającej należy do , więc wskazuje ona od strony „jeden do wielu”. Strzałka dwukierunkowa wskazuje relację „wiele do wielu”, natomiast linie bez strzałek — relacje „jeden do jednego”. Będziemy korzystać z drzewa ze strzałkami wskazującymi na klasę nadawcy. Później skorzystamy z Active Record do definiowania relacji, ale w tym rozdziale utworzymy bardzo prosty model niezawierający zaawansowanych funkcji. Aby jednak wykonać cokolwiek w Active Record, musimy zdefinio- wać bazę danych. Rysunek 2.1. Rusztowania generujące wszystkie cztery widoki 26 | Rozdział 2. Rusztowania, REST i ścieżki [ Pobierz całość w formacie PDF ] |