Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Ruby on Rails: Up and Running
SPECIAL OFFER: Upgrade this ebook with O’Reilly
A Note Regarding Supplemental Files
Preface
Who Should Read This Book?
Conventions Used in This Book
Using Code Examples
Platforms
Safari® Enabled
How to Contact Us
Acknowledgments
1. Zero to Sixty: Introducing Rails
1.1. Rails Strengths
1.2. Putting Rails into Action
1.3. Organization
1.4. The Web Server
1.4.1. Choosing a Server
1.4.1.1. WEBrick
1.4.1.2. Apache
1.4.1.3. lighttpd
1.4.1.4. Mongrel
1.4.1.5. Other web servers
1.5. Creating a Controller
1.5.1. Running the Controller
1.6. Building a View
1.7. Tying the Controller to the View
1.7.1. Expressions and Scriptlets
1.8. Under the Hood
1.9. What's Next?
2. Active Record Basics
2.1. Active Record Basics
2.1.1. Wrapping, Not Mapping
2.1.2. A Brief Example
2.1.3. The Secret Sauce
2.2. Introducing Photo Share
2.2.1. Defining the Model
2.2.2. Configuring Active Record
2.3. Schema Migrations
2.4. Basic Active Record Classes
2.4.1. Wrapping the Table
2.4.2. The Rails Console
2.5. Attributes
2.5.1. Columns
2.5.2. Accessors
2.5.3. Identifiers
2.6. Complex Classes
2.6.1. Inheritance
2.6.2. Composition
2.7. Behavior
2.7.1. Finders
2.7.2. Validation
2.7.3. Transactions
2.8. Moving Forward
3. Active Record Relationships
3.1. belongs_to
3.2. has_many
3.3. has_one
3.3.1. has_and_belongs_to_many
3.3.1.1. Join models
3.3.2. acts_as_list
3.3.3. Trees
3.4. What You Haven't Seen
3.5. Looking Ahead
4. Scaffolding
4.1. Using the Scaffold Method
4.1.1. A List of Photos
4.1.2. More Metaprogramming
4.2. Replacing Scaffolding
4.2.1. Scaffolding Is Dynamic
4.2.2. Pros and Cons
4.3. Generating Scaffolding Code
4.3.1. Inside the Generated Code
4.3.2. The Best of Both Worlds
4.4. Moving Forward
5. Extending Views
5.1. The Big Picture
5.2. Seeing Real Photos
5.3. View Templates
5.3.1. Layouts
5.4. Setting the Default Root
5.5. Stylesheets
5.6. Hierarchical Categories
5.6.1. Assign a Category to a Photo
5.7. Styling the Slideshows
5.7.1. Creating Your Own Helper Functions
5.7.2. Creating the Stylesheet
6. Ajax
6.1. How Rails Implements Ajax
6.2. Playing a Slideshow
6.3. Using Drag-and-Drop to Reorder Slides
6.4. Drag and Drop Everything (Almost Everything)
6.5. Filtering by Category
7. Testing
7.1. Background
7.2. Ruby's Test::Unit
7.3. Testing in Rails
7.3.1. Unit Tests, Functional Tests, and Integration Tests
7.3.1.1. Environments
7.3.1.2. Fixtures
7.3.1.3. Unit tests
7.3.1.4. Functional tests
7.3.1.5. Integration tests
7.3.2. Advanced Testing
7.3.2.1. ZenTest
7.3.2.2. Selenium
7.4. Wrapping Up
A. Installing Rails
1.1. Windows
1.1.1. Instant Rails
1.1.2. RadRails
2.1. OS X
2.1.1. TextMate and RadRails
3.1. Linux
B. Quick Reference
5.1. General
5.1.1. Documentation
5.1.2. Supported Web Servers
5.1.3. Supported Databases
5.1.4. Integrated Development Environments (IDEs)
5.1.4.1. Open Source
5.1.4.2. Commercial
5.1.4.3. Editors
5.1.4.4. Debugging
5.1.5. Create a New Rails Application
5.2. Testing
5.2.1. Unit Tests
5.2.2. Functional Tests
5.2.2.1. Requests
5.2.2.2. Redirects
5.2.2.3. Rendered with Template
5.2.2.4. Variable Assignments
5.2.2.5. Rendering of Specific Tags
5.2.3. Integration Tests
5.2.4. More on Testing
5.2.4.1. rake
5.2.5. Scripts
5.2.6. Generators
5.2.7. Plug-ins
5.3. RJS (Ruby JavaScript)
5.4. Active Record
5.4.1. Automated Mapping
5.4.2. Associations
5.4.3. Association Join Models (Figure B-3)
5.4.4. Validations
5.4.5. Calculations
5.4.6. Finders
5.4.6.1. Dynamic attribute-based finders
5.4.6.2. Scope
5.4.7. Acts
5.4.8. Callbacks
5.4.9. Observers
5.4.10. Migration
5.5. Controllers
5.5.1. Controller Methods
5.5.2. Render
5.5.3. Action
5.5.4. Partials
5.5.5. Templates
5.5.6. Files
5.5.7. Text
5.5.8. Inline Template
5.5.9. RJS
5.5.10. Change content_type
5.5.11. Redirects
5.5.12. Nothing
5.5.13. URL Routing
5.5.14. Filter
5.5.15. Session/Flash
5.5.15.1. Session management
5.5.16. Cookies
5.5.16.1. Setting
5.5.16.2. Reading
5.5.16.3. Deleting
5.6. Views
5.6.1. View Templates
5.6.2. RHTML
5.6.3. RXML
5.6.4. RJS
5.6.5. Helpers
5.6.6. Links
5.6.7. HTML Forms
5.6.7.1. Form
5.6.7.2. Text Fields
5.6.7.3. Text Area
5.6.7.4. Radio Button
5.6.7.5. Checkbox
5.6.7.6. Options
5.6.7.7. Date and Time
5.6.7.8. end_form Tag
5.6.8. Layouts
5.6.9. Partials
5.7. Ajax
5.7.1. Linking to Remote Action
5.7.2. Callbacks
5.7.3. Ajax Forms
5.7.4. Autocompleting Text Field
5.7.5. Observe Field
5.7.6. Observe Form
5.7.7. periodically_call_remote
5.8. Configuring Your Application
5.8.1. Session Configuration
5.8.2. Caching Configuration
About the Authors
Colophon
SPECIAL OFFER: Upgrade this ebook with O’Reilly
← Prev
Back
Next →
← Prev
Back
Next →