rent-now

Rent More, Save More! Use code: ECRENTAL

5% off 1 book, 7% off 2 books, 10% off 3+ books

9780976694007

Agile Web Development with Rails : A Pragmatic Guide

by ; ;
  • ISBN13:

    9780976694007

  • ISBN10:

    097669400X

  • Format: Paperback
  • Copyright: 2005-09-22
  • Publisher: Oreilly & Associates Inc
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $34.95

Summary

Rails is a full-stack, open source web framework that enables you to create full-featured, sophisticated web-based applications, but with a twist... A full Rails application probably has less total code than the XML you'd need to configure the same application in other frameworks. With this book you'll learn how to use ActiveRecordto connect business objects and database tables. No more painful object-relational mapping. Just create your business objects and let Rails do the rest. You'll learn how to use the Action Packframework to route incoming requests and render pages using easy-to-write templates and components. See how to exploit the Rails service frameworks to send emails, implement web services, and create dynamic, user-centric web-pages using built-in Javascript and Ajax support. There are extensive chapters on testing, deployment, and scaling. You'll see how easy it is to install Rails using your web server of choice (such as Apache or lighttpd) or using its own included web server. You'll be writing applications that work with your favorite database (MySQL, Oracle, Postgres, and more) in no time at all. You'll create a complete online store application in the extended tutorial section, so you'll see how a full Rails application is developed---iteratively and rapidly. Rails strives to honor the Pragmatic Programmer's "DRY Principle" by avoiding the extra work of configuration files and code annotations. You can develop in real-time: make a change, and watch it work immediately. Forget XML. Everything in Rails, from templates to control flow to business logic, is written in Ruby, the language of choice for programmers who like to get the job done well (and leave work on time for a change). Rails is the framework of choice for the new generation of Web 2.0 developers. Agile Web Development with Railsis the book for that generation, written by Dave Thomas (Pragmatic Programmer and author of Programming Ruby) and David Heinemeier Hansson, who created Rails.

Table of Contents

Introduction
1(8)
Rails Is Agile
3(1)
Finding Your Way Around
4(2)
Acknowledgments
6(3)
Part I---Getting Started
9(36)
The Architecture of Rails Applications
11(10)
Models, Views, and Controllers
11(4)
Active Record: Rails Model Support
15(4)
Action Pack: The View and Controller
19(2)
Installing Rails
21(6)
Installing on Windows
21(1)
Installing on Mac OS X
22(1)
Installing on Unix/Linux
22(1)
Rails and Databases
23(3)
Keeping Up-to-Date
26(1)
Rails and ISPs
26(1)
Instant Gratification
27(18)
Creating a New Application
27(2)
Hello, Rails!
29(10)
Linking Pages Together
39(4)
What We Just Did
43(2)
Part II---Building an Application
45(134)
The Depot Application
47(6)
Incremental Development
47(1)
What Depot Does
48(4)
Let's Code
52(1)
Task A: Product Maintenance
53(18)
Iteration A1: Get Something Running
53(8)
Iteration A2: Add a Missing Column
61(3)
Iteration A3: Validate!
64(3)
Iteration A4: Prettier Listings
67(4)
Task B: Catalog Display
71(8)
Iteration B1: Create the Catalog Listing
71(3)
Iteration B2: Add Page Decorations
74(5)
Task C: Cart Creation
79(22)
Sessions
79(2)
More Tables, More Models
81(2)
Iteration C1: Creating a Cart
83(8)
Iteration C2: Handling Errors
91(4)
Iteration C3: Finishing the Cart
95(6)
Task D: Checkout!
101(14)
Iteration D1: Capturing an Order
102(8)
Iteration D2: Show Cart Contents on Checkout
110(5)
Task E: Shipping
115(10)
Iteration E1: Basic Shipping
115(10)
Task F: Administrivia
125(14)
Iteration F1: Adding Users
125(5)
Iteration F2: Logging In
130(2)
Iteration F3: Limiting Access
132(4)
Finishing Up
136(1)
More Icing on the Cake
137(2)
Task T: Testing
139(40)
Tests Baked Right In
139(1)
Testing Models
140(15)
Testing Controllers
155(13)
Using Mock Objects
168(1)
Test-Driven Development
169(3)
Running Tests with Rake
172(3)
Performance Testing
175(4)
Part III---The Rails Framework
179(300)
Rails in Depth
181(18)
So Where's Rails?
181(1)
Directory Structure
181(4)
Rails Configuration
185(3)
Naming Conventions
188(4)
Active Support
192(2)
Logging in Rails
194(1)
Debugging Hints
194(2)
What's Next
196(3)
Active Record Basics
199(54)
Tables and Classes
200(1)
Columns and Attributes
201(5)
Primary Keys and IDs
206(2)
Connecting to the Database
208(2)
CRUD---Create, Read, Update, Delete
210(15)
Relationships between Tables
225(21)
Transactions
246(7)
More Active Record
253(36)
Act As
253(4)
Aggregation
257(6)
Single Table Inheritance
263(3)
Validation
266(8)
Callbacks
274(8)
Advanced Attributes
282(3)
Miscellany
285(4)
Action Controller and Rails
289(50)
Context and Dependencies
289(1)
The Basics
290(1)
Routing Requests
291(11)
Action Methods
302(10)
Cookies and Sessions
312(10)
Flash---Communicating between Actions
322(2)
Filters and Verification
324(5)
Caching, Part One
329(6)
The Problem with GET Requests
335(4)
Action View
339(46)
Templates
339(2)
Builder templates
341(1)
RHTML Templates
342(2)
Helpers
344(3)
Formatting Helpers
347(2)
Linking to Other Pages and Resources
349(3)
Pagination
352(1)
Form Helpers
353(15)
Layouts and Components
368(10)
Caching, Part Two
378(4)
Adding New Templating Systems
382(3)
The Web, V2.0
385(26)
Introducing AJAX
385(3)
The Rails Way
388(8)
The User Interface, Revisited
396(5)
Advanced Techniques
401(10)
Action Mailer
411(12)
Sending E-mail
411(7)
Receiving E-mail
418(2)
Testing E-mail
420(3)
Web Services on Rails
423(16)
What AWS Is (and What It Isn't)
423(1)
The API Definition
424(5)
Dispatching Modes
429(3)
Using Alternate Dispatching
432(1)
Method Invocation Interception
433(2)
Testing Web Services
435(2)
Protocol Clients
437(2)
Securing Your Rails Application
439(14)
SQL Injection
439(3)
Cross-Site Scripting (CSS/XSS)
442(3)
Avoid Session Fixation Attacks
445(1)
Creating Records Directly from Form Parameters
446(1)
Don't Trust ID Parameters
447(1)
Don't Expose Controller Methods
448(2)
File Uploads
450(1)
Don't Cache Authenticated Pages
450(1)
Knowing That It Works
451(2)
Deployment and Scaling
453(26)
Picking a Production Platform
453(8)
A Trinity of Environments
461(2)
Iterating in the Wild
463(4)
Maintenance
467(2)
Scaling: The Share-Nothing Architecture
469(3)
Finding and Dealing with Bottlenecks
472(4)
Case Studies: Rails Running Daily
476(3)
Part IV---Appendices
479(2)
A Introduction to Ruby
481(16)
Ruby Is an Object-Oriented Language
481(1)
Ruby Names
482(1)
Methods
483(2)
Classes
485(2)
Modules
487(1)
Arrays and Hashes
488(1)
Control Structures
489(1)
Regular Expressions
490(1)
Blocks and Iterators
490(1)
Exceptions
491(1)
Marshaling Objects
492(1)
Interactive Ruby
492(1)
Ruby Idioms
493(1)
RDoc Documentation
494(3)
B Configuration Parameters
497(4)
Active Record Configuration
497(1)
Action Pack Configuration
498(2)
Action Mailer Configuration
500(1)
Test Case Configuration
500(1)
C Source Code
501(30)
The Full Depot Application
501(25)
Sample System Notifier
526(1)
Cross-Reference of Code Samples
527(4)
D Resources
531(2)
Online Resources
531(1)
Bibliography
531(2)
Index 533

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program