Giter Site home page Giter Site logo

rails-index-show-new-create-lab-web-0916's Introduction

Index, Show, New, Create Lab

Objectives

  1. Build a RESTful index action
  2. Build a RESTful show action
  3. Build a RESTful new action
  4. Build a RESTful create action
  5. Link pages using route helpers
  6. Use route helpers in a redirect_to
  7. Build a new form with a form_tag

Instructions

This will be a pretty extensive lab that will combine a number of the concepts that we have reviewed, including:

  • Drawing multiple route types

  • Integrating route helper methods

  • Building out a form and wiring it up to the create action

  • Linking pages together

In this lab, the application you will be starting out with will be completely blank. There are no models, views, controllers, et cetera. It has a number of RSpec and Capybara tests that will all need to pass to complete the lab. The tests can be found in the spec directory, in the models, features, and controllers sub-directories. Feel free to walk through the specs to see what behavior the application should have when you're done.

Note: Like many production applications, we've included the config/secrets.yml file in the .gitignore. This means that you are going to have to create your own config/secrets.yml file for the application to run. Don't worry- we've given you a template. Just rename config/secrets-template.yml to config/secrets.yml, and you should be able to get the application to run.

The application you will be building is a Coupon app. Below is a high-level overview of the features you'll be building out:

  • You will need to create a coupons table with coupon_code and store columns, which should both be of the string data type.

  • Your index page should show all of the coupons in the database.

  • The coupon codes on the index page should link to their corresponding coupon show page. You should use the link_to method and route helper methods instead of hard-coding an HTML <a> tag.

  • Your show page should render the specific coupon passed to the route. E.g., coupons/4 should show the coupon with an ID of 4.

  • The new.html.erb view template should render a form that uses the form_tag method.

  • The form should be wired up to the create action in the controller and, when submitted, should create a new record in the coupons table with the parameters passed through the form.

  • The controller should use the redirect_to helper method to redirect the user to the show page template for the newly-created coupon.

Resources

rails-index-show-new-create-lab-web-0916's People

Contributors

dependabot[bot] avatar lizbur10 avatar danielseehausen avatar maxwellbenton avatar annjohn avatar jmburges avatar jordanhudgens avatar realandrewcohn avatar pletcher avatar dakotalmartinez avatar mhornbacher avatar peterbell avatar rrcobb avatar

Watchers

Kevin McAlear avatar  avatar Victoria Thevenot avatar Belinda Black avatar Bernard Mordan avatar  avatar Joe Cardarelli avatar Sara Tibbetts avatar The Learn Team avatar Sophie DeBenedetto avatar  avatar Jaichitra (JC) Balakrishnan avatar Antoin avatar Alex Griffith avatar  avatar Amanda D'Avria avatar  avatar Scott Ungchusri avatar Nicole Kroese  avatar Lore Dirick avatar Lisa Jiang avatar Vicki Aubin avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.