Rails. Receptury - Helion

Tytuł oryginału: Rails Cookbook
Tłumaczenie: Łukasz Piwko, Leszek Sagalara
ISBN: 978-83-246-6157-2
stron: 512, Format: ebook
Data wydania: 2012-11-08
Księgarnia: Helion
Cena książki: 33,50 zł (poprzednio: 67,00 zł)
Oszczędzasz: 50% (-33,50 zł)
Zbiór gotowych rozwiązań dla twórców aplikacji internetowych
- Instalacja i uruchomienie środowiska Rails
- Przetwarzanie grafiki
- Korzystanie z technologii AJAX
Dynamiczny rozwój sieci sprawia, że tradycyjne programy są stopniowo wypierane przez aplikacje sieciowe dostępne z poziomu przeglądarki internetowej -- wygodne, niezależne od systemu operacyjnego i łatwe w aktualizowaniu. Nadal jednak kluczowe znaczenie ma szybkość ich przygotowywania i modyfikowania. Dzięki zbiorom bibliotek zwanym "frameworks" proces tworzenia takich produktów znacznie się skrócił -- umożliwia to programistom skoncentrowanie się na faktycznej funkcjonalności tworzonego narzędzia, ponieważ biblioteki te przejmują wiele typowych i wspólnych dla wszystkich aplikacji zadań. Wśród dostępnych w sieci narzędzi tego typu coraz większą popularność zyskuje Ruby on Rails, powoli stający się "ikoną" nurtu Web 2.0. Tworzone za jego pomocą systemy są zwarte i łatwe do skalowania, a ich kod źródłowy jest przejrzysty i czytelny.
"Rails. Receptury" to zestaw porad i rozwiązań problemów, przed którymi stają programiści stosujący ten zbiór bibliotek w swojej pracy. Omówione tu zagadnienia przydadzą się zarówno początkującym, jak i doświadczonym twórcom aplikacji sieciowych. Przeczytasz tu o instalowaniu, konfigurowaniu i uruchamianiu środowiska Rails, połączeniach z bazami danych za pomocą ActiveRecord, generowaniu kodu HTML, zabezpieczaniu programów i tworzeniu kontrolerów odpowiadających za funkcjonalność systemu. Dowiesz się, jak wdrażać aplikacje Rails i korzystać w nich z możliwości oferowanych przez mechanizmy AJAX.
- Instalacja i uruchomienie środowiska
- Komunikacja z bazami danych
- Wyświetlanie danych w przeglądarce
- Wykorzystywanie szablonów RHTML
- Generowanie kodu XML i RSS
- Przetwarzanie danych z formularzy
- Personalizacja narzędzi
- Korzystanie z JavaScript i AJAX
- Zabezpieczanie aplikacji Rails
- Optymalizacja aplikacji
- Wdrażanie i utrzymywanie systemów na serwerach
- Przetwarzanie obrazów
Skorzystaj ze sprawdzonych receptur i dołącz do twórców Web 2.0!
Osoby które kupowały "Rails. Receptury", wybierały także:
- Zen Steve'a Jobsa 29,67 zł, (8,90 zł -70%)
- ASP.NET MVC. Kompletny przewodnik dla programistów interaktywnych aplikacji internetowych w Visual Studio 86,77 zł, (26,90 zł -69%)
- jQuery, jQuery UI oraz jQuery Mobile. Receptury 57,74 zł, (17,90 zł -69%)
- Scratch. Komiksowa przygoda z programowaniem 36,06 zł, (11,90 zł -67%)
- Laura Ipsum. Niezwykła wędrówka po Userlandii - przedziwnej krainie informatyki 29,75 zł, (11,90 zł -60%)
Spis treści
Rails. Receptury eBook -- spis treci
Przedmowa (9)
Wstp (11)
1. Zaczynamy (17)
- 1.1. Spoeczno Rails (18)
- 1.2. Szukanie dokumentacji (20)
- 1.3. Instalacja MySQL (21)
- 1.4. Instalacja PostgreSQL (24)
- 1.5. Instalacja Rails (26)
- 1.6. Zmiana wersji Ruby i instalacja Rails w systemie OS X Tiger (28)
- 1.7. Uruchamianie Rails w systemie OS X za pomoc Locomotive (30)
- 1.8. Uruchamianie Rails w systemie Windows za pomoc Instant Rails (32)
- 1.9. Aktualizacja Rails za pomoc RubyGems (34)
- 1.10. Utworzenie repozytorium Subversion wasnego projektu Rails (35)
2. Praca w Rails (39)
- 2.1. Tworzenie projektu Rails (39)
- 2.2. Rozpoczynamy prac z rusztowaniami (41)
- 2.3. Przyspieszanie Rails za pomoc serwera Mongrel (45)
- 2.4. Zwikszanie moliwoci produkcyjnych w systemie Windows za pomoc Cygwin (47)
- 2.5. Wzorce pluralizacyjne w Rails (48)
- 2.6. Praca w Rails w systemie OS X za pomoc TextMate (51)
- 2.7. Wieloplatformowe tworzenie aplikacji z RadRails (53)
- 2.8. Instalacja i uruchamianie Edge Rails (54)
- 2.9. Uwierzytelnianie bezhasowe za pomoc SSH (56)
- 2.10. Tworzenie dokumentacji RDoc do wasnej aplikacji Rails (57)
- 2.11. Tworzenie w peni funkcjonalnej aplikacji CRUD za pomoc Streamlined (60)
3. Active Record (65)
- 3.1. Przygotowanie relacyjnej bazy danych do pracy z Rails (66)
- 3.2. Programowe definiowanie schematu bazy danych (69)
- 3.3. Zarzdzanie baz za pomoc migracji (71)
- 3.4. Modelowanie bazy danych za pomoc Active Record (75)
- 3.5. Kontrola relacji modelu z konsoli Rails (78)
- 3.6. Dostp do danych za porednictwem Active Record (81)
- 3.7. Wyszukiwanie rekordw przy uyciu find (82)
- 3.8. Iteracja na zestawie wynikw Active Record (85)
- 3.9. Wydajne pobieranie danych przy uyciu wczesnego wczytywania (88)
- 3.10. Aktualizowanie obiektu Active Record (91)
- 3.11. Wymuszanie spjnoci danych przy uyciu walidacji Active Record (95)
- 3.12. Wykonywanie wasnych zapyta za pomoc find_by_sql (98)
- 3.13. Ochrona przed sytuacjami wycigu za pomoc transakcji (102)
- 3.14. Dodawanie do modelu moliwoci sortowania przy uyciu acts_as_list (106)
- 3.15. Wykonywanie zada przy kadorazowym tworzeniu obiektw modelu (110)
- 3.16. Modelowanie wtkowanego forum przy uyciu acts_as_nested_set (113)
- 3.17. Tworzenie katalogu zagniedonych tematw za pomoc acts_as_tree (117)
- 3.18. Unikanie sytuacji wycigu przy uyciu blokowania optymistycznego (120)
- 3.19. Obsuga tabel z odziedziczon konwencj nazewnicz (122)
- 3.20. Automatyczny zapis sygnatur czasowych (123)
- 3.21. Wydzielanie wsplnych relacji za pomoc powiza polimorficznych (125)
- 3.22. Poczenie modeli czcych i polimorfizmu w celu elastycznego modelowania danych (128)
4. Action Controller (133)
- 4.1. Dostp do danych formularza z kontrolera (134)
- 4.2. Zmiana strony domylnej aplikacji (137)
- 4.3. Zwikszanie przejrzystoci kodu za pomoc nazwanych tras (138)
- 4.4. Konfigurowanie wasnych zachowa wyboru tras (139)
- 4.5. Wywietlanie komunikatw alarmowych za pomoc flash (141)
- 4.6. Przeduanie okresu trwania komunikatu flash (143)
- 4.7. Podanie za akcjami za pomoc przekierowa (144)
- 4.8. Dynamiczne generowanie adresw URL (146)
- 4.9. Kontrolowanie da za pomoc filtrw (147)
- 4.10. Rejestracja zdarze z wykorzystaniem filtrw (149)
- 4.11. Renderowanie akcji (151)
- 4.12. Ograniczanie dostpu do metod kontrolera (153)
- 4.13. Wysyanie do przegldarki plikw lub strumieni danych (154)
- 4.14. Przechowywanie informacji o sesji w bazie danych (155)
- 4.15. ledzenie informacji za pomoc sesji (157)
- 4.16. Uwierzytelnianie z uyciem filtrw (160)
5. Action View (165)
- 5.1. Upraszczanie szablonw za pomoc metod pomocniczych (166)
- 5.2. Wywietlanie obszernych zbiorw danych za pomoc stronicowania (168)
- 5.3. Tworzenie lepkich list wyboru (171)
- 5.4. Edycja relacji wiele-do-wielu za pomoc list wielokrotnego wyboru (173)
- 5.5. Wyodrbnianie wsplnego kodu prezentacyjnego za pomoc makiet (176)
- 5.6. Definiowanie domylnej makiety dla aplikacji (179)
- 5.7. Generowanie kodu XML za pomoc szablonw Builder (180)
- 5.8. Generowanie rde RSS z danych Active Record (181)
- 5.9. Ponowne wykorzystanie elementw za pomoc podszablonw (184)
- 5.10. Przetwarzanie pl wejciowych tworzonych dynamicznie (187)
- 5.11. Dostosowywanie zachowa standardowych metod pomocniczych (190)
- 5.12. Tworzenie formularzy WWW z wykorzystaniem metod pomocniczych (192)
- 5.13. Format daty, czasu i waluty (196)
- 5.14. Personalizacja profili uytkownikw za pomoc grawatarw (198)
- 5.15. Unikanie szkodliwego kodu w widokach za pomoc szablonw Liquid (200)
- 5.16. Globalizacja aplikacji Rails (204)
6. Projektowanie z REST (209)
- 6.1. Tworzenie zagniedonych zasobw (211)
- 6.2. Obsuga innych formatw danych za pomoc typw MIME (216)
- 6.3. Modelowanie relacji REST przy uyciu modeli czcych (218)
- 6.4. Poszerzanie moliwoci CRUD za pomoc zasobw REST (221)
- 6.5. Korzystanie ze zoonych zagniedonych zasobw REST (224)
- 6.6. Tworzenie aplikacji Rails zgodnie z REST (227)
7. Testowanie aplikacji (233)
- 7.1. Centralizacja tworzenia obiektw wsplnych dla przypadkw testowych (234)
- 7.2. Tworzenie obiektw fixture dla przyporzdkowa typu wiele-do-wielu (235)
- 7.3. Importowanie danych testowych za pomoc obiektw fixture CSV (237)
- 7.4. Doczanie dynamicznych danych do obiektw fixture za pomoc ERb (239)
- 7.5. Inicjalizacja testowej bazy danych (241)
- 7.6. Interaktywne testowanie kontrolerw z poziomu konsoli Rails (243)
- 7.7. Interpretacja danych z testu jednostkowego (244)
- 7.8. adowanie danych testowych za pomoc obiektw fixture YAML (245)
- 7.9. Monitorowanie testu pokrycia za pomoc zadania stats rake (248)
- 7.10. Przeprowadzanie testw za pomoc narzdzia Rake (249)
- 7.11. Przyspieszanie testw za pomoc transakcyjnych obiektw fixture (250)
- 7.12. Sprawdzanie przez kontrolery za pomoc testw integracyjnych (252)
- 7.13. Sprawdzanie kontrolerw za pomoc testw funkcjonalnych (255)
- 7.14. Analiza zawartoci pliku cookie (258)
- 7.15. Testowanie tras wasnych i nazwanych (260)
- 7.16. Testowanie da HTTP za pomoc asercji zwizanych z odpowiedziami (262)
- 7.17. Sprawdzanie modelu za pomoc testw jednostkowych (263)
- 7.18. Jednostkowe testowanie walidacji modelu (266)
- 7.19. Weryfikacja struktury DOM za pomoc asercji znacznikw (268)
- 7.20. Pisanie wasnych asercji (271)
- 7.21. Testowanie wysyania plikw (272)
- 7.22. Modyfikowanie domylnego zachowania klasy testujcej przy uyciu makiet (275)
- 7.23. Uzyskiwanie wikszej iloci danych dziki cigemu uruchamianiu testw (277)
- 7.24. Analiza pokrycia kodu za pomoc narzdzia Rcov (279)
8. JavaScript i Ajax (283)
- 8.1. Dodawanie do strony elementw DOM (284)
- 8.2. Tworzenie wasnego raportu metod przecignij i upu (287)
- 8.3. Dynamiczne dodawanie elementw do listy wyboru (291)
- 8.4. Kontrolowanie iloci tekstu wprowadzanego do pola textarea (294)
- 8.5. Aktualizowanie elementw strony za pomoc szablonw RJS (297)
- 8.6. Wstawianie kodu JavaScript do szablonw (299)
- 8.7. Umoliwianie uytkownikom zmiany kolejnoci elementw listy (303)
- 8.8. Autouzupenianie pl tekstowych (306)
- 8.9. Wyszukiwanie i dynamiczne wyrnianie tekstu (308)
- 8.10. Uatrakcyjnianie interfejsu uytkownika przy uyciu efektw wizualnych (312)
- 8.11. Implementacja wyszukiwarki Live Search (316)
- 8.12. Edycja pl w miejscu (319)
- 8.13. Tworzenie paska postpu w Ajaksie (322)
9. Action Mailer (325)
- 9.1. Konfiguracja Rails do wysyania poczty (326)
- 9.2. Tworzenie klasy mailera za pomoc generatora mailer (327)
- 9.3. Formatowanie wiadomoci e-mail przy uyciu szablonw (329)
- 9.4. Doczanie plikw do wiadomoci e-mail (330)
- 9.5. Wysyanie wiadomoci e-mail z aplikacji Rails (331)
- 9.6. Odbieranie poczty za pomoc mechanizmu Action Mailer (332)
10. Debugowanie aplikacji Rails (335)
- 10.1. Eksploracja Rails z poziomu konsoli (336)
- 10.2. Naprawianie bdw u rda przy uyciu opcji Ruby -cw (338)
- 10.3. Debugowanie aplikacji w czasie rzeczywistym przy uyciu punktw wstrzymania (340)
- 10.4. Zapisywanie komunikatw do dziennika przy uyciu wbudowanej w Rails klasy Logger (343)
- 10.5. Zapisywanie danych debugowania w pliku (346)
- 10.6. Wysyanie informacji o wyjtkach poczt elektroniczn (348)
- 10.7. Wywietlanie w widokach informacji o rodowisku (352)
- 10.8. Wywietlanie zawartoci obiektw przy uyciu wyjtkw (353)
- 10.9. Filtrowanie zawartoci dziennika rozwojowego w czasie rzeczywistym (354)
- 10.10. Debugowanie poczenia HTTP przy uyciu rozszerze Firefoksa (356)
- 10.11. Debugowanie kodu JavaScript w czasie rzeczywistym przy uyciu powoki JavaScript Shell (358)
- 10.12. Interaktywne debugowanie kodu za pomoc narzdzia ruby-debug (361)
11. Bezpieczestwo aplikacji (365)
- 11.1. Zabezpieczanie systemu za pomoc silnego hasa (365)
- 11.2. Ochrona przed atakami typu SQL injection (367)
- 11.3. Ochrona przed atakami typu cross-site scripting (369)
- 11.4. Ograniczanie dostpu do publicznych metod i akcji (370)
- 11.5. Zabezpieczanie serwera poprzez zamknicie nieuywanych portw (372)
12. Wydajno (375)
- 12.1. Mierzenie wydajnoci serwera za pomoc narzdzia httperf (376)
- 12.2. Testowanie wydajnoci fragmentw kodu aplikacji (378)
- 12.3. Zwikszanie wydajnoci poprzez buforowanie statycznych stron (380)
- 12.4. Okres wanoci buforowanych stron (383)
- 12.5. Mieszanie treci dynamicznej i statycznej przy uyciu mechanizmu buforowania fragmentw (385)
- 12.6. Filtrowanie buforowanych stron za pomoc buforowania akcji (388)
- 12.7. Skracanie czasu dostpu do danych za pomoc systemu memcached (389)
- 12.8. Zwikszanie wydajnoci poprzez buforowanie treci po przetworzeniu (392)
13. Hosting i wdraanie (395)
- 13.1. Hosting Rails na serwerze Apache 1.3 i przy uyciu mod_fastcgi (396)
- 13.2. Zarzdzanie wieloma procesami Mongrel przy uyciu mongrel_cluster (397)
- 13.3. Hosting Rails na Apache 2.2, mod_proxy_balancer i Mongrel (400)
- 13.4. Wdraanie Rails przy uyciu Pound jako frontu dla Mongrel, Lighttpd i Apache (404)
- 13.5. Dostosowywanie do wasnych potrzeb rejestracji danych Pound za pomoc narzdzia cronolog (408)
- 13.6. Konfiguracja Pound z obsug SSL (411)
- 13.7. Rwnowaenie obcienia za pomoc prostego narzdzia o nazwie Pen (412)
- 13.8. Wdraanie projektu Rails przy uyciu Capistrano (414)
- 13.9. Wdraanie aplikacji w kilku rodowiskach przy uyciu Capistrano (417)
- 13.10. Wdraanie przy uyciu Capistrano bez dostpu do systemu Subversion (419)
- 13.11. Wdraanie przy uyciu Capistrano i mongrel_cluster (421)
- 13.12. Wyczanie strony podczas prac konserwacyjnych (423)
- 13.13. Pisanie wasnych zada Capistrano (426)
- 13.14. Usuwanie pozostaoci po sesjach (430)
14. Rozszerzanie Rails za pomoc wtyczek (433)
- 14.1. Znajdywanie wtyczek (434)
- 14.2. Instalowanie wtyczek (435)
- 14.3. Manipulacja wersjami rekordw za pomoc wtyczki acts_as_versioned (437)
- 14.4. Uwierzytelnianie przy uyciu wtyczki acts_as_authenticated (440)
- 14.5. Upraszczanie znakowania za pomoc wtyczki acts_as_taggable (443)
- 14.6. Rozszerzanie Active Record przy uyciu wtyczki acts_as (448)
- 14.7. Dodawanie metod pomocniczych widokw do Rails jako wtyczek (453)
- 14.8. Wysyanie plikw na serwer przy uyciu wtyczki file_column (455)
- 14.9. Wysyanie plikw na serwer przy uyciu wtyczki acts_as_attachment (457)
- 14.10. Wyczanie rekordw zamiast ich usuwania za pomoc wtyczki acts_as_paranoid (461)
- 14.11. Dodawanie bardziej wyrafinowanego mechanizmu uwierzytelniania przy uyciu wtyczki login_engine (463)
15. Grafika (467)
- 15.1. Instalowanie interfejsu RMagick do przetwarzania obrazw (467)
- 15.2. Wysyanie obrazw do bazy danych (471)
- 15.3. Serwowanie obrazkw bezporednio z bazy danych (475)
- 15.4. Tworzenie miniatur za pomoc RMagick (476)
- 15.5. Generowanie dokumentw PDF (479)
- 15.6. Wizualna prezentacja danych przy uyciu Gruff (481)
- 15.7. Tworzenie maych grafw przy uyciu biblioteki Sparklines (484)
A Migracja do Rails 1.2 (487)
- Action Controller (487)
- Active Record (489)
- Action View (489)
Skorowidz (491)