GithubHelp home page GithubHelp logo

symfony-playground's Introduction

High Cotton Code Assessment

Instructions

You'll be creating a sample Inventory application to demonstrate your ability to learn Symfony and Doctrine's peculiarities.

  1. Using the provided HCTest key, git clone the TestApp repo and SSH into this server as ec2-user.
  2. Create a new index page with a menu link titled "Parts".
    1. Reuse bootstrap themes and nav menu
  3. Create a Category entity which will hold Parts.
    1. Doctrine calls database models entities
    2. Just a class that extends Doctrine version of BaseModel
  4. Create a Part entity that is linked with a Category (other fields are up to you).
    1. Category and Parts will subclass or extend BaseEntity
  5. Create admin pages to create and edit Categories with links in the menu.
  6. Create admin pages to create and edit Parts with links in the menu.
  7. Add a display of Parts to the index page with the ability to filter by Category.
  8. Make sure the website displays correctly in production mode and let us know you've finished.

Overview

  1. Create BaseEntity Doctrine model.
  2. Create Parts and Category models extending BaseEntity.
  3. Add one to one relation from Parts to Category.
  4. Create admin pages for Parts and Category
    1. Update admin pages dynamically.
    2. Any db model data validation should be a method on the model, not in admin pages.
  5. Create one View page for Parts containing list of parts in db, columns filterable, and sortable
  6. Nav menu should have links to Home, PartsView, PartsAdmin, and CategoryAdmin

I had a hunch that Symfony was a PHP web framework, which I confirmed. No idea what Doctrine was. Google says it's a PHP ORM. That's all I need to know to get started.

Steps

The first thing I did when I received Jon's email was SSH to the IP. When I got in, I looked around at the environment, OS, local files and dirs. Found the TestApp.git directory. I hadn't seen a local git server setup, so it was a bit confusing at first.

1. Clone TestApp Repo

Using the provided HCTest key, git clone the TestApp repo and SSH into this server as ec2-user.

This is an easy, common, everyday task for any developer. Then the problems began. I've cloned many a git repo using HTTP/S, but never using SSH, and not with a RSA key. After some googling, and trial-and-error, I finally got the following commands to work in git bash.

eval `ssh-agent -s`
ssh-add ./.ssh/HCTest.pem
git clone [email protected]:/home/ec2-user/TestApp.git

My lazy SSH alias:

alias hcbox='eval ssh-agent -s; ssh-add $G/hc-test/.ssh/HCTest.pem; hc="52.87.236.27"; ssh ec2-user@$hc'

Now, on to the good stuff.

Got Symfony Up and Running

composer

php composer.phar create-project symfony/framework-standard-edition MyFirstApp

stuff...

Got My libs Installed

Followed the project structure here: http://symfony.com/doc/current/page_creation.html#checking-out-the-project-structure

symfony-playground's People

Contributors

kurohai avatar

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.