Agile Web Development with Rails: A Pragmatic Guide

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

I bought this one with 'Programming Ruby' thinking that I would need both to understand what RoR is all about, but 'Programming Ruby' is still on the shelf and in a few days I was running the shopping cart example. Great way to learn how to use the framework. And from what I saw, the new version is evolving at the same fast pace as Rails. That's my next buy.

Author(s): Dave Thomas, David Heinemeier Hansson, Leon Breedt, Mike Clark, Thomas Fuchs, Andrea Schwarz
Series: Pragmatic Programmers
Edition: 1
Publisher: Pragmatic Bookshelf
Year: 2005

Language: English
Pages: 555

Introduction......Page 11
Rails Is Agile......Page 13
Finding Your Way Around......Page 14
Acknowledgments......Page 16
Getting Started......Page 18
Models, Views, and Controllers......Page 19
Active Record: Rails Model Support......Page 22
Action Pack: The View and Controller......Page 26
Installing on Windows......Page 29
Installing on Unix/Linux......Page 30
Rails and Databases......Page 31
Rails and ISPs......Page 34
Creating a New Application......Page 35
Hello, Rails!......Page 37
Linking Pages Together......Page 47
What We Just Did......Page 51
Building an Application......Page 52
Incremental Development......Page 53
What Depot Does......Page 54
Let's Code......Page 58
Iteration A1: Get Something Running......Page 59
Iteration A2: Add a Missing Column......Page 67
Iteration A3: Validate!......Page 69
Iteration A4: Prettier Listings......Page 73
Iteration B1: Create the Catalog Listing......Page 77
Iteration B2: Add Page Decorations......Page 80
Sessions......Page 84
More Tables, More Models......Page 86
Iteration C1: Creating a Cart......Page 88
Iteration C2: Handling Errors......Page 95
Iteration C3: Finishing the Cart......Page 100
Iteration D1: Capturing an Order......Page 105
Iteration D2: Show Cart Contents on Checkout......Page 114
Iteration E1: Basic Shipping......Page 119
Iteration F1: Adding Users......Page 128
Iteration F2: Logging In......Page 133
Iteration F3: Limiting Access......Page 135
Finishing Up......Page 139
More Icing on the Cake......Page 140
Tests Baked Right In......Page 142
Testing Models......Page 143
Testing Controllers......Page 158
Using Mock Objects......Page 171
Test-Driven Development......Page 172
Running Tests with Rake......Page 175
Performance Testing......Page 178
The Rails Framework......Page 182
Directory Structure......Page 183
Rails Configuration......Page 187
Naming Conventions......Page 190
Active Support......Page 194
Debugging Hints......Page 196
What's Next......Page 198
Active Record Basics......Page 200
Columns and Attributes......Page 201
Primary Keys and IDs......Page 207
Connecting to the Database......Page 209
CRUD---Create, Read, Update, Delete......Page 211
Relationships between Tables......Page 226
Transactions......Page 247
Acts As......Page 253
Aggregation......Page 257
Single Table Inheritance......Page 263
Validation......Page 266
Callbacks......Page 274
Advanced Attributes......Page 282
Miscellany......Page 285
Context and Dependencies......Page 288
The Basics......Page 289
Routing Requests......Page 290
Action Methods......Page 301
Cookies and Sessions......Page 310
Flash---Communicating between Actions......Page 321
Filters and Verification......Page 323
Caching, Part One......Page 328
The Problem with GET Requests......Page 334
Templates......Page 337
Builder templates......Page 339
RHTML Templates......Page 340
Helpers......Page 342
Formatting Helpers......Page 345
Linking to Other Pages and Resources......Page 347
Pagination......Page 350
Form Helpers......Page 351
Layouts and Components......Page 366
Caching, Part Two......Page 375
Adding New Templating Systems......Page 380
Introducing AJAX......Page 383
The Rails Way......Page 386
The User Interface, Revisited......Page 393
Advanced Techniques......Page 399
Sending E-mail......Page 409
Receiving E-mail......Page 416
Testing E-mail......Page 418
What AWS Is (and What It Isn't)......Page 421
The API Definition......Page 422
Dispatching Modes......Page 427
Using Alternate Dispatching......Page 430
Method Invocation Interception......Page 431
Testing Web Services......Page 433
Protocol Clients......Page 435
SQL Injection......Page 437
Cross-Site Scripting (CSS/XSS)......Page 440
Avoid Session Fixation Attacks......Page 443
Creating Records Directly from Form Parameters......Page 444
Don't Trust ID Parameters......Page 445
Don't Expose Controller Methods......Page 446
File Uploads......Page 447
Don't Cache Authenticated Pages......Page 448
Knowing That It Works......Page 449
Picking a Production Platform......Page 450
A Trinity of Environments......Page 458
Iterating in the Wild......Page 460
Maintenance......Page 464
Scaling: The Share-Nothing Architecture......Page 465
Finding and Dealing with Bottlenecks......Page 469
Case Studies: Rails Running Daily......Page 473
Appendices......Page 476
Ruby Is an Object-Oriented Language......Page 477
Ruby Names......Page 478
Methods......Page 479
Classes......Page 481
Arrays and Hashes......Page 483
Control Structures......Page 485
Blocks and Iterators......Page 486
Exceptions......Page 487
Interactive Ruby......Page 488
Ruby Idioms......Page 489
RDoc Documentation......Page 490
Active Record Configuration......Page 492
Action Pack Configuration......Page 493
Test Case Configuration......Page 495
The Full Depot Application......Page 496
Sample System Notifier......Page 521
Cross-Reference of Code Samples......Page 522
Bibliography......Page 526