Learning Rails - Helion
ISBN: 978-05-965-5421-7
stron: 448, Format: ebook
Data wydania: 2008-11-18
Księgarnia: Helion
Cena książki: 109,65 zł (poprzednio: 127,50 zł)
Oszczędzasz: 14% (-17,85 zł)
While most books written about Rails cater to programmers looking for information on data structures, Learning Rails targets web developers whose programming experience is tied directly to the Web.
Rather than begin with the inner layers of a Rails web application--the models and controllers--this unique book approaches Rails development from the outer layer: the application interface. You'll learn how to create something visible with Rails before reaching the more difficult database models and controller code. With Learning Rails, you can start from the foundations of web design you already know, and then move more deeply into Ruby, objects, and database structures. This book will help you:
- Present web content by building an application with a basic view and a simple controller, while learning Ruby along the way
- Build forms and process their results, progressing from the simple to the more complex
- Connect forms to models by setting up a database, and use Rails' ActiveRecord to create code that maps to database structures
- Use Rails scaffolding to build applications from a view-centric perspective
- Add common web application elements such as sessions, cookies, and authentication
- Build applications that combine data from multiple tables
- Create simple but dynamic interfaces with Rails and Ajax
Once you complete Learning Rails, you'll be comfortable working with the Rails web framework, and you'll be well on your way to becoming a Rails guru.
Osoby które kupowały "Learning Rails", wybierały także:
- Zen Steve'a Jobsa 29,67 zł, (8,90 zł -70%)
- ASP.NET MVC. Kompletny przewodnik dla programistów interaktywnych aplikacji internetowych w Visual Studio 86,77 zł, (26,90 zł -69%)
- jQuery, jQuery UI oraz jQuery Mobile. Receptury 57,74 zł, (17,90 zł -69%)
- Scratch. Komiksowa przygoda z programowaniem 36,06 zł, (11,90 zł -67%)
- Baltie. Kurs video. Poziom pierwszy. Elementarz programowania w języku wizualnym 59,00 zł, (26,55 zł -55%)
Spis treści
Learning Rails eBook -- spis treści
- Learning Rails
- SPECIAL OFFER: Upgrade this ebook with OReilly
- A Note Regarding Supplemental Files
- Preface
- Who This Book Is For
- Who This Book Is Not For
- What Youll Learn
- Ruby and Rails Style
- Other Options
- Rails Versions
- If You Have Problems Making Examples Work
- If You Like (or Dont Like) This Book
- Conventions Used in This Book
- Using Code Examples
- How to Contact Us
- Acknowledgments
- 1. Starting Up Ruby on Rails
- Getting Started in the Online Cloud: Heroku
- Getting Started with Instant Rails
- Getting Started at the Command Line
- Starting Up Rails
- Dodging Database Issues
- What Server Is That?
- Test Your Knowledge
- Quiz
- Answers
- 2. Rails on the Web
- Creating Your Own View
- What Are All Those Folders?
- Adding Some Data
- How Hello World Works
- Protecting Your View from the Controller
- Parentheses Are (Usually) Optional
- Adding Logic to the View
- Test Your Knowledge
- Quiz
- Answers
- 3. Adding Web Style
- I Want My CSS!
- Layouts
- Splitting View from Layout
- Creating a Default Layout
- Choosing a Layout from a Controller
- Sharing Template Data with the Layout
- Setting a Default Page
- Test Your Knowledge
- Quiz
- Answers
- 4. Controlling Data Flow: Controllers and Models
- Getting Started, Greeting Guests
- Application Flow
- Keeping Track: A Simple Guestbook
- Connecting to a Database Through a Model
- Connecting the Controller to the Model
- Storing data using the model
- Retrieving data from the model and showing it
- Finding Data with ActiveRecord
- Test Your Knowledge
- Quiz
- Answers
- 5. Accelerating Development with Scaffolding and REST
- A First Look at Scaffolding
- REST and Controller Best Practices
- Websites and Web Applications
- Toward a Cleaner Approach
- Examining a RESTful Controller
- Index: An Overview of Data
- Show: Just One Row of Data
- New: A Blank Set of Data Fields
- Edit: Hand Me That Data, Please
- Create: Save Something New
- Put This Updated Record In
- Destroy It
- Escaping the REST Prison
- Test Your Knowledge
- Quiz
- Answers
- 6. Presenting Models with Forms
- More Than a Name on a Form
- Generating HTML Forms with Scaffolding
- Form As a Wrapper
- Creating Text Fields and Text Areas
- Creating Checkboxes
- Creating Radio Buttons
- Creating Selection Lists
- Dates and Times
- Labels
- Creating Helper Methods
- Letting Helper Methods Make Choices
- A More Elegant Helper Method
- Putting the Form Body in a Partial
- Test Your Knowledge
- Quiz
- Answers
- 7. Strengthening Models with Validation
- Without Validation
- The Original Model
- The Power of Declarative Validation
- Managing Secrets
- Customizing the Message
- Limiting Choices
- Testing Format with Regular Expressions
- Seen It All Before
- Numbers Only
- A Place on the Calendar
- Testing for Presence
- Beyond Simple Declarations
- Test It Only If
- Do It Yourself
- Test Your Knowledge
- Quiz
- Answers
- 8. Improving Forms
- Adding a Picture by Uploading a File
- File Upload Forms
- Model and Migration Changes
- A migration for an extension
- Extending a model beyond the database
- Showing it off
- Results
- Standardizing Your Look with Form Builders
- Supporting Your Own Field Types
- Adding Automation
- Integrating Form Builders and Styles
- Test Your Knowledge
- Quiz
- Answers
- Adding a Picture by Uploading a File
- 9. Developing Model Relationships
- Connecting Awards to Students
- Establishing the Relationship
- Supporting the Relationship
- Guaranteeing a Relationship
- Connecting Students to Awards
- Removing Awards When Students Disappear
- Counting Awards for Students
- Nesting Awards in Students
- Changing the Routing
- Changing the Controller
- Changing the Award Views
- Connecting the Student Views
- Is Nesting Worth It?
- Many-to-Many: Connecting Students to Courses
- Creating Tables
- Connecting the Models
- Adding to the Controllers
- Adding Routing
- Supporting the Relationship Through Views
- Establishing navigation
- Showing counts
- Enrolling students in courses
- Whats Missing?
- Test Your Knowledge
- Quiz
- Answers
- Connecting Awards to Students
- 10. Managing Databases with Migrations
- What Migrations Offer You
- Migration Basics
- Migration Files
- Running Migrations Forward and Backward
- Inside Migrations
- Working with Tables
- Data Types
- Working with Columns
- Indexes
- Other Opportunities
- Test Your Knowledge
- Quiz
- Answers
- 11. Debugging
- Creating Your Own Debugging Messages
- Logging
- Working with Rails from the Console
- The Ruby Debugger
- Test Your Knowledge
- Quiz
- Answers
- 12. Testing
- Test Mode
- Setting Up a Test Database with Fixtures
- Unit Testing
- Functional Testing
- Calling Controllers
- Testing Responses
- Dealing with Nested Resources
- Integration Testing
- Beyond the Basics
- Test Your Knowledge
- Quiz
- Answers
- 13. Sessions and Cookies
- Getting Into and Out of Cookies
- Storing Data Between Sessions
- Test Your Knowledge
- Quiz
- Answers
- 14. Users and Authentication
- Installation
- Storing User Data
- Controlling Sessions
- Classifying Users
- More Options
- Test Your Knowledge
- Quiz
- Answers
- 15. Routing
- Creating Routes to Interpret URIs
- Specifying Routes with map.connect
- A Domain Default with map.root
- Route Order and Priority
- Named Routes
- Globbing
- Regular Expressions and Routing
- Mapping Resources
- Nesting Resources
- Checking the Map
- Generating URIs from Views and Controllers
- Pointing url_for in the Right Direction
- Adding Options
- Infinite Possibilities
- Test Your Knowledge
- Quiz
- Answers
- Creating Routes to Interpret URIs
- 16. Creating Dynamic Interfaces with Rails and Ajax
- Ajax Basics
- Supporting Ajax with Rails
- Rails as a Server API
- Rails and the Client
- Managing Enrollment through Ajax
- Making the Form More Scriptable
- Changing Courses without Changing Pages
- Rethinking Logic
- Moving Further into Ajax
- Test Your Knowledge
- Quiz
- Answers
- 17. Mail in Rails
- Sending Text Mail
- Setup
- Adjusting Routing for an email Method
- Sending Email
- Sending HTML Mail
- Sending Complex HTML Email
- Receiving Mail
- Setup
- Processing Messages
- Test Your Knowledge
- Quiz
- Answers
- Sending Text Mail
- 18. Securing, Managing, and Deploying Your Rails Projects
- Securing Your Application
- SQL Injection
- Cross-Site Scripting
- Cross-Site Request Forgery (CSRF)
- URL Hacking
- Other Security Issues
- Deploying Rails Applications
- Changing to Production Mode
- Database, Web, and App Servers
- Database choices
- Web server choices
- App server choices
- Walking Through a Passenger-Based Deployment
- Creating the MySQL database
- Configuring Rails to use the MySQL database
- A quick test
- Installing Phusion Passenger
- Results
- Deployment Directions
- Test Your Knowledge
- Quiz
- Answers
- Securing Your Application
- 19. Making the Most of RailsAnd Beyond
- Keep Up with Rails
- Plug-ins
- Ruby
- Web Services
- Explore Other Ruby Frameworks
- Migrating Legacy Applications to Rails
- Keep Exploring
- A. An Incredibly Brief Introduction to Ruby
- How Ruby Works
- How Rails Works
- Getting Started with Classes and Objects
- Comments
- Variables, Methods, and Attributes
- Variables
- Arrays and hashes
- Symbols
- Methods
- Privacy, please
- super
- Calling methods: advanced options
- Attributes
- Variables
- Logic and Conditionals
- Operators
- if, else, unless, and elsif
- ?:
- case and when
- Loops
- while and until
- Just Counting
- for
- Many More Possibilities
- B. An Incredibly Brief Introduction to Relational Databases
- Tables of Data
- Connecting Tables
- Using Tables to Connect Tables
- Granularity
- Databases, Tables, and Rails
- Tables of Data
- C. An Incredibly Brief Guide to Regular Expressions
- What Regular Expressions Do
- Starting Small
- The Simplest Expressions: Literal Strings
- Character Classes
- Escaping
- Modifiers
- Anchors
- Sequences, Repetition, Groups, and Choices
- Greed
- More
- D. A Catalog of Helper Methods
- Calling Helper Methods
- ActiveRecordHelper
- AssetTagHelper
- AtomFeedHelper and AtomFeedHelper::AtomFeedBuilder
- BenchmarkHelper, CacheHelper, and CaptureHelper
- DateHelper
- DebugHelper
- FormHelper, FormTagHelper, and FormOptionsHelper
- JavaScriptHelper
- NumberHelper
- PrototypeHelper
- RecordIdentificationHelper
- SanitizeHelper
- ScriptaculousHelper
- TagHelper
- TextHelper
- UrlHelper
- E. Glossary
- Speaking in Rails
- Index
- About the Authors
- Colophon
- SPECIAL OFFER: Upgrade this ebook with OReilly