RailsSpace Building a Social Networking Website with Ruby on Rails┐

by ;
  • ISBN13:


  • ISBN10:


  • Edition: 1st
  • Format: Paperback
  • Copyright: 2007-07-20
  • Publisher: Addison-Wesley Professional
  • Purchase Benefits
  • 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.
  • Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $54.99 Save up to $2.20
  • eBook
    Add to Cart


Supplemental Materials

What is included with this book?

  • The eBook copy of this book is 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.


Ruby on Rails is fast displacing PHP, ASP, and J2EE as the development framework of choice for discriminating programmers, thanks to its elegant design and emphasis on practical results.RailsSpaceteaches you to build large-scale projects with Rails by developing a real-world application: a social networking website like MySpace, Facebook, or Friendster. Inside, the authors walk you step by step from the creation of the site's virtually static front page, through user registration and authentication, and into a highly dynamic site, complete with user profiles, image upload, email, blogs, full-text and geographical search, and a friendship request system. In the process, you learn how Rails helps you control code complexity with the model-view-controller (MVC) architecture, abstraction layers, automated testing, and code refactoring, allowing you to scale up to a large project even with a small number of developers. This essential introduction to Rails provides A tutorial approach that allows you to experience Rails as it is actually used A solid foundation for creating any login-based website in Rails Coverage of newer and more advanced Rails features, such as form generators, REST, and Ajax (including RJS) A thorough and integrated introduction to automated testing The book's companion website provides the application source code, a blog with follow-up articles, narrated screencasts, and a working version of the RailSpace social network.

Author Biography

Michael Hartl is a programmer and entrepreneur. Before discovering Rails, he used Zope/Python in a startup he cofounded to produce fantasy sports websites, including BracketManager, at the time the number one independent NCAA Basketball Tournament website. Previously, he was a physics instructor at the California Institute of Technology, where he received the Lifetime Achievement Award for Excellence in Teaching. He also served as Caltech's editor for The Feynman Lectures on Physics: The Definitive and Extended Edition (Addison-Wesley). He is a graduate of Harvard College and has a Ph.D. in physics from Caltech.

Aurelius Prochazka is a pioneer of interactive, user-driven websites and has founded several companies, including Creative Internet Design, Inc., and ArsDigita Corporation. After working extensively with many operating systems and web frameworks, he happily calls Macintosh OS X and Ruby on Rails his preferred programming environments. Aurelius is the principal developer of Caltech's main website, as well as its admissions and alumni sites. He is a graduate of Rensselaer Polytechnic Institute and has a Ph.D. in computational fluid dynamics from Caltech.

Table of Contents

List of Figures
Why Rails?
Why this book?
Who should read this book?
A couple of Rails stories
Getting started
Our first pages
Rails views
Developing with style
Modeling users
Creating the User model
User model validations
Further steps to ensure data integrity(?)
Registering users
A User controller
User registration: the view
User registration: the action
Linking in Registration
An example user
Getting started with testing
Our testing philosophy
Test database configuration
Site controller testing
Registration testing
Basic User model testing
Detailed User model testing
Logging in and out
Maintaining state with sessions
Logging in
Logging out
Protecting pages
Friendly URL forwarding
Refactoring basic login
Advanced login
So you say you want to be remembered?
Actually remembering the user
Remember me tests
Advanced tests: integration testing
Refactoring redux
Updating user information
A non-stub hub
Updating the email address
Updating password
Testing user edits
Building a social network
Personal profiles
A user profile stub
User specs
Editing the user specs
Updating the user hub
Personal FAQ: Interests and personality
Public-facing profile
Building a community (controller)
Setting up sample users
The community index
Polishing results
Searching and browsing
Testing search
Beginning browsing
Location, location, location
Preparing for avatar upload
Manipulating avatars
Action Mailer
Double-blind email system
Modeling friendships
Friendship requests
Managing friendships
RESTful blogs
We deserve a REST today
Scaffolds for a RESTful blog
Building the real blog
RESTful Testing
Blog comments with Ajax
RESTful comments
Beginning Ajax
Visual effects
Debugging and testing
What next?
Deployment considerations
More Ruby and Rails
Table of Contents provided by Publisher. All Rights Reserved.

Rewards Program

Write a Review