Coder Social home page Coder Social logo

buildarailsapp's Introduction

BuildARailsApp

First Rails Project for SE Immersive Students, 2020

First Rails Project

Overview

For this project you will be working in pairs to build your very first Rails project. No tests will be involved so you will be able to be creative with your ideas so long as you meet the requirements below. Get your ideas approved by an instructor before you start coding.

Requirements

Create a repo to be shared with your partner(s). Have your partner(s) fork and clone your repo to submit code in order to finish this project. You'll be asked to submit the link to your completed project to your 1:1 coach.

Database

Make sure that you are using SQLite for this project, and that your schema reflects the tables needed to execute on deliverables.

Models & Relationships

Your project must have at least three models that are all associated. You must have a has_many - belongs_to relationship, and a has_many, through relationship.

Here are some examples you can choose from:

  • An Artist has many Songs, and a Song belongs to an Artist. An Artist has many Genres, through Songs.
  • An Owner has many Pets, and a Pet belongs to an Owner. An Owner has many Species, through Pets.
  • A Painter has many Paintings, and a Painting belongs to a Painter. A Painter has many Museums, through Paintings.
  • A Vendor has many Products, and a Product belongs to a Vendor. A Vendor has many Stores, through Products.
  • A Writer has many Articles, and an Article belongs to a Writer. A Writer has many Publications, through Articles.

CRUD/Routing

Your application should follow RESTful conventions, in that, your models should be able to be Created, Updated, Read, and Deleted. New objects should be posted to the create actions, and updating objects should be put to the update action, etc.

Forms

Your project must include forms that follow the user experience and use collection_select. Your forms can include a nested form for your has_many, belongs_to relationship.

For example: If I am creating a Song in a form, I should be able to select from a list of Genres that exist already, or create a new one at the same time.

Recap of Requirements

  1. SQLite

  2. Three models

  3. Has Many - Belongs To relationship

  4. Has Many, Through relationship

  5. CRUD actions for your models

  6. Form with collection_select

BONUS: Nested form for your Has_many, belongs to relationship, adding validations where appropriate for models.

Deadline and 1:1 Requirement

Your mission is to complete as many of the requirements as possible before 1:1 time, ~ 4pm today. Submit your (public) repo link to your coach during 1:1 and come with answers to the following questions:

  • What challenges did you face in building this app?
  • What successes did you have when building this app?
  • What are (3) things you've identified through work on this app as concepts to strengthen?
  • What are (3) concepts you understand really well, as evidenced when working on this app?

buildarailsapp's People

Watchers

 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.