reklama - zainteresowany?

RailsSpace. Tworzenie społecznościowych serwisów internetowych w Ruby on Rails - Helion


Autor: Michael Hartl, Aurelius Prochazka
Tytuł oryginału: RailsSpace: Building a Social Networking Website with Ruby on Rails (Addison-Wesley Professional Ruby Series)
Tłumaczenie: Marcin Rogóż
ISBN: 978-83-246-1633-6
stron: 552, Format: 172x245, okładka: twarda
Data wydania: 2008-09-15
Księgarnia: Helion

Cena książki: 11,00 zł (poprzednio: 78,57 zł)
Oszczędzasz: 86% (-67,57 zł)

Dodaj do koszyka

Tagi: OUTLET | Rails - Programowanie

Poznaj Ruby on Rails i stwórz atrakcyjną witrynę społecznościową

  • Jak konfigurować sesje bazodanowe?
  • Na czym polega trasowanie komentarzy?
  • W jaki sposób przygotować stronę przesyłania awatarów?

Serwisy społecznościowe, które gromadzą ludzi o podobnych zainteresowaniach i umożliwiają komunikację między znajomymi, cieszą się ogromną i wciąż rosnącą popularnością. Dzięki temu, że pozwalają na wymianę opinii i ułatwiają podtrzymywanie globalnych kontaktów, stają się elementami strategii biznesowych i marketingowych wielu firm. Do budowania takich serwisów doskonale nadaje się Rails, który oferuje klientom witryny w pełni dopasowane do potrzeb ich użytkowników. Rails został napisany w dynamicznym obiektowym języku Ruby z użyciem architektury MVC. Ten framework wyróżniają przede wszystkim dwie reguły: reguła DRY, polegająca na unikaniu wykonywania tej samej pracy w różnych miejscach, oraz reguła CoC., która pozwala na zminimalizowanie niezbędnej konfiguracji przez zastępowanie jej gotowymi, domyślnymi, zalecanymi wzorcami. Rails umożliwia także użycie wtyczek, rozszerzających aplikacje o rozmaite funkcjonalności np. logowanie, wrzucanie i skalowanie obrazków czy tagowanie.

Książka "RailsSpace. Tworzenie społecznościowych serwisów internetowych w Ruby on Rails" stanowi praktyczny kurs tworzenia interaktywnego serwisu społecznościowego. Za pomocą tego podręcznika nauczysz się budować taką witrynę, zaczynając od statycznej strony głównej, przez utworzenie mechanizmu rejestracji i uwierzytelnienia użytkowników, a kończąc na dynamicznej stronie WWW, z możliwością przesyłania obrazów i prowadzenia blogów, oraz systemie dodawania znajomych. Jeśli więc pragniesz stworzyć atrakcyjny i funkcjonalny serwis społecznościowy, przyciągający rzesze użytkowników ? książka z pewnością Ci w tym pomoże!

  • Konfigurowanie środowiska programistycznego
  • Modelowanie i rejestrowanie użytkowników
  • Testowanie
  • Ochrona stron
  • Zaawansowane logowanie
  • Aktualizacja informacji użytkownika
  • Tworzenie sieci społecznej
  • Awatary
  • Model znajomości
  • Blogi w technologii REST
  • Komentarze do blogu w technologii AJAX

Samodzielnie zbuduj funkcjonalny serwis społecznościowy!!!

Dodaj do koszyka

 

Osoby które kupowały "RailsSpace. Tworzenie społecznościowych serwisów internetowych w Ruby on Rails ", wybierały także:

  • Windows Small Business Server 2003. Administracja systemem

Dodaj do koszyka

Spis treści

RailsSpace. Tworzenie społecznościowych serwisów internetowych w Ruby on Rails -- spis treści

Spis rysunków (13)

Podziękowania (17)

Rozdział 1. Wprowadzenie (19)

  • 1.1. Dlaczego Rails? (19)
    • 1.1.1. Produktywność chce być wolna (20)
    • 1.1.2. Ta produktywność nie jest wolna (20)
  • 1.2. Dlaczego ta książka? (21)
  • 1.3. Kto powinien przeczytać tę książkę? (22)
    • 1.3.1. Jak czytać tę książkę? (22)
    • 1.3.2. Jak oglądać tę książkę? (23)
  • 1.4. Kilka historii związanych z Rails (23)
    • 1.4.1. Aure (23)
    • 1.4.2. Michael (25)

Część I: Podstawy (29)

Rozdział 2. Zaczynamy (31)

  • 2.1. Przygotowania (31)
    • 2.1.1. Konfigurowanie środowiska programistycznego (33)
    • 2.1.2. Praca z rails (33)
    • 2.1.3. Serwer deweloperski (35)
  • 2.2. Nasze pierwsze strony (37)
    • 2.2.1. Generowanie kontrolera (38)
    • 2.2.2. Kontroler Site (41)
    • 2.2.3. URL w Rails (42)
    • 2.2.4. Zmienianie trasy (44)
  • 2.3. Widoki w Rails (44)
    • 2.3.1. Osadzony Ruby (ERb) (45)
  • 2.4. Układy (47)
    • 2.4.1. ERb, akcje i zmienne egzemplarza (48)
    • 2.4.2. Powtórka: podział strony (50)
    • 2.4.3. Dodawanie nawigacji (50)
    • 2.4.4. Tablice asocjacyjne (51)
    • 2.4.5. Symbole (52)
    • 2.4.6. Dopracowywanie link_to (53)
    • 2.4.7. Kwestia stylu (54)
    • 2.4.8. Dopracowywanie nawigacji (55)
    • 2.4.9. Znajdź coś dla siebie (55)
  • 2.5. Programowanie ze stylem (56)

Rozdział 3. Modelowanie użytkowników (61)

  • 3.1. Tworzenie modelu User (61)
    • 3.1.1. Konfigurowanie bazy danych (61)
    • 3.1.2. Migracje i model User (64)
    • 3.1.3. Pierwsza migracja użytkownika (65)
    • 3.1.4. Rake migracji (66)
  • 3.2. Walidacja modelu użytkownika (69)
    • 3.2.1. Konsola (70)
    • 3.2.2. Prosta walidacja (71)
    • 3.2.3. Walidacje w akcji (75)
    • 3.2.4. Poprawianie walidacji (75)
    • 3.2.5. Porządne walidacje (77)
    • 3.2.6. Magiczne kolumny (80)
  • 3.3. Dalsze kroki w celu zapewnienia integralności danych (?) (82)

Rozdział 4. Rejestrowanie użytkowników (85)

  • 4.1. Kontroler User (85)
  • 4.2. Rejestracja użytkownika - widok (86)
    • 4.2.1. Widok rejestracji - wygląd (87)
    • 4.2.2. Omówienie widoku rejestracji (91)
    • 4.2.3. Poprawianie formularza rejestracji (93)
    • 4.2.4. Zabawa z formularzami i funkcją debug (95)
  • 4.3. Rejestracja użytkownika - akcja (97)
    • 4.3.1. Komunikaty o błędach formularza (103)
    • 4.3.2. Flash (108)
    • 4.3.3. Ukończona funkcja register (110)
    • 4.3.4. Zarys głównej strony użytkownika (111)
  • 4.4. Dołączanie rejestracji (113)
    • 4.4.1. Pliki pomocnicze (115)
  • 4.5. Przykładowy użytkownik (118)

Rozdział 5. Rozpoczynamy testowanie (119)

  • 5.1. Nasza filozofia testowania (120)
  • 5.2. Konfiguracja testowej bazy danych (120)
  • 5.3. Testowanie kontrolera Site (121)
    • 5.3.1. Niebanalny test (122)
    • 5.3.2. Nadmiar testów? (125)
  • 5.4. Testowanie rejestracji (126)
    • 5.4.1. Uruchamianie testów funkcjonalnych (126)
    • 5.4.2. Podstawowe testy rejestracji (126)
    • 5.4.3. Testowanie rejestracji zakończonej powodzeniem (129)
    • 5.4.4. Testowanie rejestracji zakończonej niepowodzeniem (130)
    • 5.4.5. Uruchamianie testów (133)
    • 5.4.6. Więcej testów rejestracji? (133)
  • 5.5. Podstawowe testy modelu User (133)
    • 5.5.1. Podstawowe testy walidacji (135)
  • 5.6. Szczegółowe testy modelu User (137)
    • 5.6.1. Testowanie niepowtarzalności (138)
    • 5.6.2. Testowanie długości pseudonimu (139)
    • 5.6.3. Skorzystaj z konsoli (140)
    • 5.6.4. Testowanie długości hasła (142)
    • 5.6.5. Testowanie wyrażeń regularnych (144)
    • 5.6.6. Uruchamianie wszystkich testów (151)

Rozdział 6. Logowanie i wylogowywanie (153)

  • 6.1. Utrzymywanie stanu za pomocą sesji (154)
    • 6.1.1. Konfigurowanie sesji bazodanowych (154)
  • 6.2. Logowanie (156)
    • 6.2.1. Rejestrowanie stanu zalogowania (156)
    • 6.2.2. Logowanie po zarejestrowaniu (156)
    • 6.2.3. Debugowanie ze zmienną sesji (157)
    • 6.2.4. Widok i akcja logowania (162)
    • 6.2.5. Testowanie poprawnego logowania (165)
    • 6.2.6. Testowanie nieprawidłowego logowania (167)
  • 6.3. Wylogowanie (168)
    • 6.3.1. Testowanie wylogowania (169)
    • 6.3.2. Testowanie nawigacji (170)
  • 6.4. Ochrona stron (173)
    • 6.4.1. Chronienie stron w głupi sposób (173)
    • 6.4.2. Chronienie stron w mądry sposób (173)
    • 6.4.3. Testowanie chronienia (176)
  • 6.5. Przyjazne przekazywanie URL (178)
    • 6.5.1. Zmienna request (178)
    • 6.5.2. Przyjazne przekierowywanie po zalogowaniu (181)
    • 6.5.3. Przyjazne przekierowywanie po rejestracji (183)
    • 6.5.4. Przyjazne testowanie (184)
  • 6.6. Refaktoryzacja podstawowego logowania (185)
    • 6.6.1. Zalogowany? (186)
    • 6.6.2. Zaloguj! (190)
    • 6.6.3. Wyloguj! (193)
    • 6.6.4. Wyczyść hasło! (194)
    • 6.6.5. Obsługa formularza bez powtórzeń (197)
    • 6.6.6. Przyjazne przekierowania bez powtórzeń (198)
    • 6.6.7. Sprawdzamy poprawność (200)

Rozdział 7. Zaawansowane logowanie (201)

  • 7.1. A więc chcesz być zapamiętany? (201)
    • 7.1.1. Pole opcji "zapamiętaj mnie" (202)
    • 7.1.2. Atrybut "pamiętaj mnie" (205)
    • 7.1.3. Cookie "pamiętaj mnie" (206)
  • 7.2. Faktyczne zapamiętywanie użytkownika (213)
    • 7.2.1. Cookie uwierzytelniające (214)
    • 7.2.2. Pamiętanie, że zapamiętaliśmy (216)
    • 7.2.3. Aktualizacja logout (218)
    • 7.2.4. Bardziej bezpieczny plik cookie (220)
    • 7.2.5. Ukończone (?) funkcje (222)
  • 7.3. Testy zapamiętywania użytkowników (224)
    • 7.3.1. Poprawione testy logowania (224)
    • 7.3.2. Poprawiona funkcja wylogowania (230)
  • 7.4. Testy zaawansowane - testowanie integracji (230)
    • 7.4.1. Testowanie pamiętania cookie - pierwsze cięcie (231)
    • 7.4.2. Testowanie testu - opowieść ku przestrodze (233)
    • 7.4.3. Kilka refleksji dotyczących testowania w Rails (235)
  • 7.5. Ponowna refaktoryzacja (235)
    • 7.5.1. Refaktoryzacja remember (236)
    • 7.5.2. Refaktoryzacja forget (239)
    • 7.5.3. Jeszcze dwie poprawki (240)
    • 7.5.4. W pełni zrefaktoryzowana funkcja login (241)
    • 7.5.5. Kilka końcowych przemyśleń (244)

Rozdział 8. Aktualizacja informacji użytkownika (245)

  • 8.1. Sensowniejsza strona centrum użytkownika (246)
  • 8.2. Aktualizacja adresu e-mail (246)
  • 8.3. Aktualizacja hasła (248)
    • 8.3.1. Obsługa przesyłania haseł (253)
  • 8.4. Testowanie edycji informacji o użytkownikach (257)
    • 8.4.1. Funkcje pomocnicze dla testów (259)
    • 8.4.2. Testowanie strony edycji (262)
    • 8.4.3. Zaawansowany test (263)
  • 8.5. Części (266)
    • 8.5.1. Dwie proste części (266)
    • 8.5.2. Bardziej zaawansowany plik części (267)
    • 8.5.3. Problem, a później koniec (270)
    • 8.5.4. Aktualizacja akcji login i register (271)

Część II: Tworzenie sieci społecznościowej (275)

Rozdział 9. Profile osobiste (277)

  • 9.1. Zaczątek profilu użytkownika (277)
    • 9.1.1. Adresy URL profilów (278)
    • 9.1.2. Kontroler i akcje profilu (280)
  • 9.2. Specyfikacja użytkownika (282)
    • 9.2.1. Generowanie modelu Spec (282)
    • 9.2.2. Model Spec (284)
    • 9.2.3. Łączenie modeli (286)
  • 9.3. Edycja specyfikacji użytkownika (288)
    • 9.3.1. Kontroler Spec (288)
    • 9.3.2. Narzędzie dla HTML (290)
    • 9.3.3. Widok edycji specyfikacji (292)
    • 9.3.4. Ochrona specyfikacji (293)
    • 9.3.5. Testowanie specyfikacji (295)
  • 9.4. Aktualizacja centrum użytkownika (299)
    • 9.4.1. Nowy widok centrum użytkownika (300)
    • 9.4.2. Pole specyfikacji (303)
    • 9.4.3. Trasy nazwane i adres URL profilu (305)
    • 9.4.4. Główna zawartość centrum użytkownika (307)
  • 9.5. Osobisty FAQ - zainteresowania i osobowość (310)
    • 9.5.1. Model FAQ (311)
    • 9.5.2. Kontroler FAQ (314)
    • 9.5.3. Edycja FAQ (315)
    • 9.5.4. Dodawanie FAQ do centrum użytkownika (317)
    • 9.5.5. Testy FAQ (320)
  • 9.6. Upublicznianie profilu (322)

Rozdział 10. Społeczność (325)

  • 10.1. Tworzenie społeczności (kontroler) (325)
  • 10.2. Wprowadzanie przykładowych użytkowników (326)
    • 10.2.1. Zbieranie danych (327)
    • 10.2.2. Ładowanie danych (328)
  • 10.3. Spis członków społeczności (330)
    • 10.3.1. Nowy trik funkcji find (331)
    • 10.3.2. Akcja index (334)
    • 10.3.3. Spis alfabetyczny (336)
    • 10.3.4. Wyświetlanie wyników indeksu (338)
  • 10.4. Dopracowywanie wyników (343)
    • 10.4.1. Dodawanie paginacji (343)
    • 10.4.2. Podsumowanie wyników (347)

Rozdział 11. Wyszukiwanie i przeglądanie (349)

  • 11.1. Wyszukiwanie (349)
    • 11.1.1. Widoki wyszukiwania (350)
    • 11.1.2. Ferret (353)
    • 11.1.3. Wyszukiwanie za pomocą funkcji find_by_contents (355)
    • 11.1.4. Dodawanie paginacji do wyszukiwania (357)
    • 11.1.5. Wyjątek od reguły (361)
  • 11.2. Testowanie wyszukiwania (363)
  • 11.3. Rozpoczynamy przeglądanie (366)
    • 11.3.1. Strona przeglądania (366)
    • 11.3.2. Wyszukiwanie według wieku, płci i miejsca pobytu (na razie bez tego ostatniego) (368)
  • 11.4. Miejsce pobytu (372)
    • 11.4.1. Lokalna baza danych informacji geograficznych (373)
    • 11.4.2. Używanie GeoData do wyszukiwania według miejsca pobytu (375)
    • 11.4.3. Nazwy lokalizacji (378)
    • 11.4.4. Dodawanie walidacji przeglądarki (381)
    • 11.4.5. Ukończona strona główna społeczności (386)

Rozdział 12. Awatary (389)

  • 12.1. Przygotowania do przesłania awataru (389)
    • 12.1.1. Dostosowywanie modelu (390)
    • 12.1.2. Strona przesyłania awatarów (392)
    • 12.1.3. Plik części awataru (396)
  • 12.2. Operowanie na awatarach (397)
    • 12.2.1. ImageMagick i convert (398)
    • 12.2.2. Metoda save (401)
    • 12.2.3. Dodawanie walidacji (402)
    • 12.2.4. Usuwanie awatarów (406)
    • 12.2.5. Testowanie awatarów (409)

Rozdział 13. E-mail (413)

  • 13.1. Action Mailer (413)
    • 13.1.1. Konfiguracja (414)
    • 13.1.2. Przypominanie hasła (415)
    • 13.1.3. Tworzenie odnośnika i dostarczanie przypomnienia (416)
    • 13.1.4. Testowanie przypominania (420)
  • 13.2. Podwójnie ślepy system e-mail (423)
    • 13.2.1. Odnośnik e-mail (424)
    • 13.2.2. Akcja correspond i formularz e-mail (425)
    • 13.2.3. Wiadomość e-mail (427)
    • 13.2.4. Testowanie podwójnie ślepego systemu poczty elektronicznej (430)

Rozdział 14. Znajomości (435)

  • 14.1. Tworzenie modelu znajomości (435)
    • 14.1.1. Znajomości w abstrakcji (436)
    • 14.1.2. Model znajomości (437)
    • 14.1.3. Tworzenie oczekujących znajomości (439)
    • 14.1.4. Propozycja zawarcia znajomości (440)
    • 14.1.5. Kończenie modelu Friendship (441)
    • 14.1.6. Testowanie modelu Friendship (443)
  • 14.2. Propozycje znajomości (444)
    • 14.2.1. Odnośnik do propozycji znajomości (444)
    • 14.2.2. Sterowanie propozycją (446)
  • 14.3. Zarządzanie znajomościami (449)
    • 14.3.1. has_many :through (449)
    • 14.3.2. Centrum znajomości (452)
    • 14.3.3. Akcje dla znajomości (455)
    • 14.3.4. Testowanie propozycji znajomości (458)

Rozdział 15. Blogi w technologii REST (461)

  • 15.1. Zasługujemy na REST (462)
    • 15.1.1. REST i CRUD (463)
    • 15.1.2. Modyfikatory URL (465)
    • 15.1.3. Słoń;w pokoju (466)
    • 15.1.4. Odpowiadanie na formaty i darmowe API (468)
  • 15.2. Rusztowania dla blogów zgodnych z REST (469)
    • 15.2.1. Pierwszy zasób REST (469)
    • 15.2.2. Wpisy do blogu (471)
    • 15.2.3. Kontroler Post (474)
  • 15.3. Tworzenie prawdziwego blogu (478)
    • 15.3.1. Łączenie modeli (478)
    • 15.3.2. Trasowanie blogu i wpisu (479)
    • 15.3.3. Kontroler Posts (480)
    • 15.3.4. Zarządzanie blogiem (483)
    • 15.3.5. Tworzenie wpisów (485)
    • 15.3.6. Wyświetlanie wpisów (487)
    • 15.3.7. Edycja wpisów (490)
    • 15.3.8. Publikowanie wpisów (493)
    • 15.3.9. Ostatni, denerwujący szczegół (495)
  • 15.4. Testy REST (498)
    • 15.4.1. Domyślne testy funkcjonalne REST (498)
    • 15.4.2. Dwa niestandardowe testy (501)

Rozdział 16. Komentarze do blogu w technologii Ajax (503)

  • 16.1. Komentarze zgodne z REST (503)
    • 16.1.1. Zasób Comments (504)
    • 16.1.2. Model i powiązania komentarza (505)
    • 16.1.3. Kontroler Comments i zapobiegawczy widok części (507)
    • 16.1.4. Trasowanie komentarzy (508)
  • 16.2. Wprowadzamy Ajaksa (509)
    • 16.2.1. Nowe komentarze (510)
    • 16.2.2. Tworzenie komentarzy (514)
    • 16.2.3. Niszczenie komentarzy (517)
  • 16.3. Efekty wizualne (519)
    • 16.3.1. Pliki RJS i pierwszy efekt (520)
    • 13.3.2. Kolejne dwa efekty (521)
    • 16.3.3. Przycisk anuluj (523)
    • 16.3.4. Zgrabna degradacja (524)
  • 16.4. Debugowanie i testowanie (526)
    • 16.4.1. Inne spojrzenie na new (526)
    • 16.4.2. Testowanie Ajax za pomocą xhr (527)

Rozdział 17. Co dalej? (529)

  • 17.1. Co należy wziąć pod uwagę? (529)
    • 17.1.1. Wybór sprzętu i oprogramowania (530)
    • 17.1.2. Praca w trybie produkcyjnym (530)
    • 17.1.3. Minimalny serwer produkcyjny (532)
    • 17.1.4. Skalowanie (534)
    • 17.1.5. Podstawy administrowania (536)
  • 17.2. Więcej Ruby on Rails (539)

Skorowidz (541)

Dodaj do koszyka

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2019 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.