We're going to build a Rails app that handles sessions with a
SessionsController
. We won't have passwords—for now, we're going to ask the
user what to call them, and we'll just use that as their username.
Our app will have two pages:
- a home page or root route. _ if the user is not logged in, the page should show them a login link. _ if the user is logged in, the page should say, "hi, #{name}", and provide a logout link.
- a login page _ users can enter their name in a form and click 'login'. Thereafter, the app will refer to them by that name. _ if the user does not enter a name, they are not logged in. Return them to the login page.
-
Create the sessions controller.
Note: If you use the generators to generate your controllers be sure to pass these flags to avoid generating unneeded files:
rails generate controller Sessions new --no-helper --no-assets --no-controller-specs
. -
Write the
new
,create
, anddestroy
methods. -
Write feature tests for your views that ensure the app functions as we described in the overview.
-
Create the views that make your tests pass!
View Sessions Controller Lab on Learn.co and start learning to code for free.