How Hello World Works
The Hello World programs are actually doing a lot of work, as shown in Figure 2-4, though most of it happens transparently.

Figure 2-4. Simplified processing path for the Hello World programs
When the code runs, Rails interprets the request for http://localhost:3000/hello/ as a call to the Hello controller. It has a list of routing
rules, managed through a config/routes.rb file you can edit—this is just the default behavior.
Controllers can have multiple methods, but the default method (just like
when you request an HTML file) is index. Rails routing
functionality then calls the index
method, which sets up some basic variables.
When the controller is done, Rails passes its data to the view in the app/views/hello directory. How does it know to go there? Thanks to the magic of naming conventions, that view processing (possibly including layouts) generates an HTML result, which gets sent to the browser.
Rails applications have lots of moving parts, but you can usually look at the parts and guess (or control) what Rails is going to do with them. As you’ll see in later chapters, the connections between controllers and models and models and databases rely heavily on such naming conventions and default behaviors. The connections that Rails creates in this way won’t solve all of your problems all of the time, but they do make it easy to solve a wide variety of problems most ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access