Suchen und Finden

Titel

Autor/Verlag

Inhaltsverzeichnis

Nur eBooks für mein Endgerät anzeigen:

 

Newsletter

Rapid Web Development mit Ruby on Rails

von: Ralf Wirdemann, Thomas Baustert

Carl Hanser Fachbuchverlag, 2008

ISBN: 9783446416635, 437 Seiten

3. Auflage

Format: PDF, OL

Mac OSX,Windows PC,Mac OSX,Windows PC Bookeen Cybook Orizon,Ectaco Lite,Aluratek Libre,eLyricon EBX-500.TFT,PocketBook 302,FlatReader,BeBook 'One',iRiver Story,Sony Reader PRS-3xx,Bookeen CyBook Opus,Hanvon/Hexaglot N518,PocketBook 301+,COOL-ER eReader,Inves-Book 600,eLyricon EBX-600.E-Ink, Bookeen CyBook Gen3 ab Rev: 1.9,Italica Reader,Sony Reader PRS-505, -6xx, -7xx,Pocketbook 360,Hanvon N516 Weltbild Apple iPad, Android Tablet PC's Online-Lesen für: Linux,Mac OSX,Windows PC

Preis: 34,90 EUR

  • Web 2.0 Konzepte, Anwendungen, Technologien, 3. Auflage
    Flexible Rails - Flex 3 auf Rails 2
    Objective-C und Cocoa – Band 1: Grundlagen
    iPhone Anwendungsentwicklung für Einsteiger
    PHP für WordPress - Themes und Templates selbst entwickeln
    PHP 5 / MySQL 4. Studienausgabe - Praxisbuch und Referenz
    JavaScript - Einstieg für Anspruchsvolle
    Jetzt lerne ich CSS
  • TYPO3 und TypoScript Kochbuch
    Das TYPO3-Anwenderhandbuch
    Das Google Web Toolkit. schnell + kompakt
    Das Zend Framework - Von den Grundlagen bis zur fertigen Anwendung

     

     

     

     

     

 

Mehr zum Inhalt

Rapid Web Development mit Ruby on Rails


 

Inhaltsverzeichnis

8

Vorwort

18

Vorwort zur 2. Auflage

20

Vorwort zur 3. Auflage

22

Danksagung

24

Kapitel 1 Einleitung

26

1.1 Für wen dieses Buch bestimmt ist

27

1.2 Organisation des Buches

28

1.3 Web-Site zum Buch

30

1.4 Feedback

30

Kapitel 2 Überblick und Installation

32

2.1 Was ist Ruby on Rails?

32

2.2 Bestandteile von Rails

35

2.2.1 Komponenten und Zusammenspiel

35

2.2.2 Action Pack

36

2.2.3 Active Record

36

2.2.4 Action Mailer

37

2.2.5 Ajax

37

2.2.6 Unit Tests

37

2.3 Installation

37

2.3.1 Windows

37

2.3.2 Mac

38

2.3.3 Linux

38

2.3.4 Aktualisierung

38

2.3.5 Datenbank

38

2.3.6 Glückwunsch! Willkommen an Bord!

38

Kapitel 3 Hands-on Rails

40

3.1 Entwicklungsphilosophie

41

3.2 Domain-Modell

41

3.3 OnTrack Product Backlog

42

3.4 Aufsetzen der Infrastruktur

43

3.5 Projekte erfassen, bearbeiten und löschen

45

3.5.1 Modell erzeugen

45

3.5.2 Datenbankmigration

47

3.5.3 Controller

51

3.6 Iterationen hinzufügen

52

3.7 Zwischenstand

59

3.8 Iterationen anzeigen

59

3.9 Iterationen bearbeiten und löschen

61

3.10 Tasks hinzufügen

64

3.11 Tasks anzeigen, bearbeiten und löschen

67

3.12 Struktur in die Seiten bringen

69

3.13 Validierung

70

3.14 Benutzerverwaltung

74

3.15 Login

76

3.16 Tasks zuweisen

79

3.17 Endstand und Ausblick

80

Kapitel 4 Active Record

82

4.1 Active Record-Klassen

82

4.1.1 Mehr über Modellattribute

84

4.1.2 Mehr über Primärschlüssel

85

4.1.3 Zusammengesetzte Primärschlüssel

86

4.1.4 Mehr über Tabellennamen

86

4.2 Active Record direkt verwenden

88

4.3 Die Rails-Konsole

88

4.4 Objekte erzeugen, laden, aktualisieren und löschen

89

4.4.1 Erzeugung

90

4.4.2 Objekte laden

90

4.4.3 Objekte aktualisieren

91

4.4.4 Objekte löschen

93

4.5 Mehr über Finder

93

4.5.1 Suchbedingungen: conditions

93

4.5.2 SQL-Injection vermeiden

95

4.5.3 Ordnung schaffen: order

96

4.5.4 Limitieren: limit

96

4.5.5 Seitenweise: limit und offset

96

4.5.6 Weitere Parameter: joins und include

97

4.6 Dynamische Finder

98

4.7 Kann ich weiterhin SQL verwenden?

99

4.8 Metadaten – Daten ¨uber Daten

100

4.9 Assoziationen

101

4.9.1 Grundsätzliches

101

4.9.2 1:1-Beziehungen: has one – belongs to

103

4.9.3 1:N-Beziehungen: has many – belongs to

109

4.9.4 N:M-Beziehungen: has and belongs to many

115

4.9.5 Polymorphe Assoziationen: has many – belongs to

119

4.9.6 has many :through

122

4.10 Aggregation

124

4.11 Vererbung

125

4.12 Transaktionen

128

4.13 Von Bäumen und Listen

130

4.13.1 acts as list

131

4.13.2 acts as tree

133

4.14 Validierung

135

4.14.1 Validierungs-Klassenmethoden

136

4.15 Callbacks

140

4.15.1 Überschreiben von Callback-Methoden

141

4.15.2 Callback-Makros

141

4.15.3 Observer

143

4.16 Konkurrierende Zugriffe und Locking

144

4.16.1 Optimistisches Locking

144

Kapitel 5 Action Controller

146

5.1 Controller-Grundlagen

146

5.1.1 Actions

147

5.1.2 Responses

148

5.2 Datenaustausch

151

5.2.1 Vom Controller zum View

151

5.2.2 Vom View zum Controller

152

5.2.3 Aus der Action in den View und zurück

154

5.3 Redirects

155

5.4 GET vs. POST

156

5.5 Unterschiedliche Response-Formate: respond to

158

5.6 Zugriff auf Datens¨atze einschr¨anken

160

5.7 Ausnahme fangen mit rescue from

161

5.8 Sessions

162

5.8.1 Session-Daten löschen

164

5.9 Der Flash-Speicher

165

5.9.1 Weitere Flash-Methoden

166

5.10 Filter

166

5.10.1 Around-Filter

167

5.10.2 Bedingungen

168

5.10.3 Filterklassen und Inline-Filter

169

5.10.4 Filtervererbung

169

5.10.5 Filterketten

170

5.11 HTTP-Authentifikation

171

5.12 Routing und URL-Generierung

172

5.12.1 Routing

172

5.12.2 Anpassung des Routings

174

5.12.3 Root Route

175

5.12.4 Named Routes

175

5.12.5 URL-Generierung

177

5.13 Layout

178

5.13.1 Automatische Layoutzuweisung

179

5.13.2 Explizite Layoutzuweisung

179

5.13.3 Dynamische Bestimmung des Layouts

180

5.13.4 Action-spezifische Layouts

180

5.14 Datei-Download

181

5.14.1 Die Methode send data

181

5.14.2 Die Methode send file

182

5.14.3 Unsichere Dateidownloads verhindern

182

5.15 Datei-Upload

183

5.16 Rails-Konsole für Controller nutzen

183

Kapitel 6 Action View

186

6.1 HTML-Templates

186

6.2 Helper-Module

188

6.3 Action View Helper

190

6.3.1 Formulare

190

6.3.2 Schutz vor Cross-Site Request Forgery

192

6.3.3 Formular-Helper mit Bezug zu Modellen

193

6.3.4 Formular-Helper ohne Bezug zu Modellen

195

6.3.5 HTML-Tags

196

6.3.6 Texte und Zahlen

196

6.3.7 Datum und Zeit

197

6.3.8 Auswahlboxen

198

6.3.9 Verweise und URLs

200

6.3.10 Ressourcen einbinden

202

6.3.11 JavaScript

203

6.3.12 Code speichern und wiederverwenden

203

6.3.13 Debugging

204

6.3.14 HTML-Code filtern

204

6.4 Layouts

205

6.4.1 Layout aus Views beeinflussen

205

6.5 Partial Views

206

6.6 Anzeige Fehlermeldungen

210

6.7 XML-Templates

211

6.8 RJS-Templates

212

6.9 Caching

212

6.9.1 Seiten-Caching

213

6.9.2 Action-Caching

213

6.9.3 Fragment-Caching

215

6.9.4 Was Sie nicht cachen sollten

218

6.9.5 Caching testen

218

6.9.6 Action Cache Plugin

218

Kapitel 7 RESTful Rails

220

7.1 Was ist REST?

221

7.2 Warum REST?

222

7.3 Was ist neu?

222

7.4 Vorbereitung

223

7.5 Ressource Scaffolding

223

7.6 Das Modell

224

7.7 Der Controller

224

7.7.1 REST-URLs

225

7.7.2 REST-Actions verwenden respond to

226

7.7.3 Accept-Feld im HTTP-Header

227

7.7.4 Formatangabe via URL

228

7.8 REST-URLs in Views

229

7.8.1 New und Edit

230

7.8.2 Path-Methoden in Formularen: Create und Update

231

7.8.3 Destroy

233

7.9 URL-Methoden im Controller

234

7.10 REST-Routing

235

7.10.1 Konventionen

235

7.10.2 Customizing

235

7.11 Verschachtelte Ressourcen

236

7.11.1 Anpassung des Controllers

238

7.11.2 Neue Helper für verschachtelte Ressourcen

239

7.11.3 Zufügen neuer Iterationen

241

7.11.4 Bearbeiten existierender Iterationen

243

7.12 Eigene Actions

244

7.12.1 Sind wir noch DRY?

246

7.13 Eigene Formate

246

7.14 RESTful AJAX

247

7.15 Testen

249

7.16 RESTful Clients: ActiveResource

250

7.17 Abschließend

251

Kapitel 8 Internationalisierung

252

8.1 Internationalisierung oder Lokalisierung?

253

8.2 Lokalisierung und Codes

253

8.2.1 Language Tag

253

8.2.2 Locale

253

8.3 Checkliste

254

8.4 Internationalisierung vorbereiten

255

8.5 Ruby Gettext-Package

256

8.5.1 Installation

257

8.5.2 Texte übersetzen

257

8.5.3 Die Schritte im Überblick

262

8.5.4 Anwendung und Gettext zusammenbringen

262

8.5.5 Lokalisierte Templates

263

8.5.6 Controller

263

8.5.7 Modelle

264

8.5.8 Dynamische Texte und Pluralisierung

266

8.5.9 Datum, Zahlen und Währungen

268

8.5.10 Wochen- und Monatsnamen

270

8.5.11 Sortierung

272

8.5.12 Zusammenfassung

273

Kapitel 9 Action Mailer

274

9.1 E-Mail-Versand

274

9.1.1 E-Mail erstellen

274

9.1.2 E-Mail-Objekt erzeugen

278

9.1.3 E-Mail versenden

279

9.1.4 Testen

281

9.1.5 Tipp zum zuverlässigen E-Mail-Versand

282

9.1.6 Multipart E-Mails

283

9.2 E-Mail-Empfang

285

9.2.1 E-Mail empfangen

286

9.2.2 Empfang testen

287

Kapitel 10 Ajax

288

10.1 Ajax und Rails

290

10.2 Hello, Ajax World

291

10.3 Ajax-Formulare

292

10.3.1 Task-Schnellerfassung

292

10.3.2 Ajax-Formulare und JavaScript

295

10.4 Feldbeobachter

295

10.4.1 Beispiel: Tasks filtern

297

10.5 Callback-Methoden

299

10.6 Drag and Drop

300

10.6.1 Einkaufen per Drag and Drop

300

10.6.2 Sortieren per Drag and Drop

303

10.7 Autocompletion

306

10.8 RJS Templates

307

10.8.1 Hinzufügen von Tasks visuell optimieren

308

10.8.2 Weitere Techniken

311

10.8.3 Debugging und Testen

314

10.9 Zusammenfassung und Ausblick

315

Kapitel 11 Produktion

316

11.1 Umgebungen in Rails

316

11.1.1 Umgebung definieren

316

11.1.2 Entwicklung

317

11.1.3 Test

317

11.1.4 Produktion

317

11.1.5 Umgebung hinzufügen

318

11.2 Webserver und Datenbank

319

11.2.1 Datenbank

319

11.2.2 Webserver Cluster

319

11.2.3 Apache und Mongrel

320

11.2.4 Alternativen

323

11.3 Skalierung

324

11.4 Session-Speicher

325

11.5 Tipps zur Performanz

326

11.6 Sicherheit

327

11.7 Auslieferung

330

11.8 Wartung

330

11.9 Überwachung

331

Kapitel 12 Deployment mit Capistrano (und Subversion)

334

12.1 Quickstart: Capistrano in 10 Minuten

335

12.1.1 Voraussetzungen

335

12.1.2 Installation von Capistrano

337

12.1.3 Anwendung Capistrano-ready machen

337

12.1.4 Konfiguration

338

12.1.5 Setup des entfernten Verzeichnisses

340

12.1.6 Erstes Deployment

340

12.1.7 Fallstricke

343

12.1.8 Nachfolgende Deployments

344

12.2 Datenbanksetup und Migration

344

12.3 Rollback eines Release

345

12.3.1 Rollback mit Datenbankmigration

345

12.4 Tasks

345

12.4.1 Ausführen von Tasks

346

12.4.2 Mehr über run und sudo

348

12.4.3 Weitere Task-Helper: delete, put und render

349

12.4.4 Transaktionen und Rollbacks

349

12.4.5 Überschreiben von Standardtasks

350

12.4.6 Tasks erweitern: Before- und After-Tasks

350

12.5 Variablen

351

12.6 FastCGI-Utilities

352

12.6.1 Spawner

352

12.6.2 Reaper

353

12.7 Gemeinsame Dateien – das Shared-Verzeichnis

353

12.7.1 Eine ”persistente“ Datenbank-Konfiguration

353

12.8 Capistrano-Referenz

355

12.9 Capistrano-Konfiguration: deploy.rb

356

Kapitel 13 Testgetriebene Entwicklungmit Ruby und Test::Unit

358

13.1 Unit Tests – eine Definition

358

13.2 Ein Beispiel

359

13.3 Warum testen?

360

13.4 Test::Unit

361

13.4.1 Strukturierung von Unit Tests

362

13.4.2 Wohin mit den Tests?

364

13.4.3 Ausführen der Tests

364

13.4.4 Unabhängigkeit von Tests

365

13.5 Testgetriebene Softwareentwicklung

365

13.5.1 TODO-Listen

367

13.5.2 Beispiel

367

13.6 Retrospektive

369

Kapitel 14 Testgetriebene Entwicklungmit Ruby on Rails

370

14.1 Generierte Testklassen

370

14.2 Testdatenbank

371

14.3 Testausführung mit Rake

372

14.4 Eine Programmierepisode

372

14.4.1 Entwicklung einer Modellklasse

373

14.4.2 Entwicklung des Controllers

377

14.4.3 Programmierung des Views

378

14.4.4 Geänderte Anforderungen

380

14.4.5 Retrospektive

386

14.5 Unit Tests – Testen von Modellklassen

387

14.5.1 Struktur und Elemente von Modelltests

387

14.5.2 Testmethoden

388

14.5.3 Testdaten – Fixtures

389

14.5.4 Transaktionale Fixtures

392

14.5.5 Testrezepte für Modelle

392

14.6 Funktionale Tests

398

14.6.1 Testmethoden

398

14.6.2 Kontrollfluss-Assertions

399

14.6.3 Routing-Assertions

401

14.6.4 Datencontainer-Assertions

402

14.6.5 Template-Assertions

402

14.6.6 Testrezepte für Controller und Views

404

14.7 Integrationstests

408

14.7.1 Test-DSLs

410

14.7.2 Sessions

411

14.8 Testen von E-Mails

412

14.9 Mock-Objekte

412

14.10 Zusammenfassung

413

14.11 Assertions – U¨ bersicht

414

Anhang

416

Literaturverzeichnis

424

Stichwortverzeichnis

426