matheusgomes17 / laravel_commerce

Curso laravel Code Education - Ecommerce

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Laravel PHP Framework

Build Status Total Downloads Latest Stable Version Latest Unstable Version License


poo-code-education

Curso Laravel eCommerce - Code Education Laravel 5.1

Fase 1 do projeto

Instalando e versionando

  • Nessa primeira fase do projeto, você deverá instalar o Laravel, mudar o namespace padrão da aplicação para CodeCommerce e versionar todos os arquivos criados no Git.
  • Não esqueça de testar a aplicação rodando o comando: php artisan serve

Fase 2 do projeto

Criando os primeiros Models

  • Nessa fase do projeto, você deverá criar 2 models:
Category
name - varchar(80)
description - text
Product
name - varchar(80)
description - text
price - decimal
  • Todos esses campos apresentados devem ser utilizados como Mass Assigment.

Registre 2 rotas:

  • admin/categories: Deve apontar para o controller AdminCategoriesController e para action index
  • admin/products: Deve apontar para o controller AdminProductsController e para action index Quando o usuário acessar qualquer uma dessas rotas, ele deverá acessar a listagem dos registros do model correspondente.

Fase 3 do projeto

Criação das rotas

  • Agora que você já possui os dois models criados, crie as rotas necessárias para que possamos realizar um CRUD em cada model.
  • Para facilitar a administração do arquivo de rotas, as mesmas deverão ser totalmente agrupadas pelo prefixo: admin e pelo seu próprio model.

Exemplo:

admin/products, admin/categories

OBS:

  • Enquanto nem todos os controllers e actions ainda não estão definidos, aponte as rotas para um controller e action qualquer.
  • Todas as rotas devem possuir nome e seus parâmetros devem ser validados.

Fase 4 do projeto

CRUD

  • Nessa fase, você deverá criar 2 CRUDs.
  • Categories (exatamente como fizemos no vídeo)
  • Products.
  • No caso do CRUD de Products, devemos ter os seguintes campos:
 - name
 - description
 - price (decimal)
 - featured (boolean) Aqui você pode criar um campo do tipo: checkbox, radio ou select
 - recommend (boolean) Aqui você pode criar um campo do tipo: checkbox, radio ou select

OBS:

  • Utilize o recurso de migrations para gerar a tabela "products".

Fase 5 do projeto

SEEDING

  • Nessa fase, você deverá adicionar dados Fakes nas seguintes entidades:
 - User   
 - Category   
 - Product

Fase 6 do projeto

RELACIONAMENTO

  • Essa fase do projeto é bem simples.
  • Você apenas deverá criar o relacionamento entre os Models, exatamente como fiz nesse capítulo.
  • Também, você deverá implementar a paginação em todos os CRUDs.

OBS:

  • Não se esqueça de checar se suas rotas estão seguindo o mesmo padrão que estou utilizando.

Fase 7 do projeto

UPLOAD DE IMAGENS

  • Essa etapa é bastante simples.
  • Você simplesmente precisa repetir exatamente o processo de cadastro de imagens de produtos com upload.
  • Por outro lado, gostaria que você também testasse o processo de upload utilizando a Amazon S3. Ok?

OBS:

  • Você tem que criar uma maneira de que quando apagar um produto (destroy), se ele tiver imagens, apagar os arquivos das imagens também.

Fase 8 do projeto

TAGS

  • Agora que você já aprendeu a trabalhar com relacionamentos ManyToMany, adicione ao formulário de Criação / Edicação de produtos, a opção de setar tags para determinado produto em um textarea (entre vírgulas).

OBS:

  • Uma tag já adicionada na tabela de tags não pode ter o registro repetido, ou seja, não pode ter duas categorias "notebooks" na tabela tags.

Fase 9 do projeto

LOJA

Agora que você já possui a base para gerar a home da Loja, você precisa:

  • Listar os produtos em desta
  • Listar os produtos recomendados

OBS:

  • Quando clicarmos em um item da categoria, deveremos exibir apenas os produtos de uma determinada categoria.

Fase 10 do projeto

ASSETS

  • Repita exatamente o aprendido nesse capítulo para que você possa gerenciar seus assets utilizando o Elixir.

Fase 11 do projeto

PRODUTOS COM TAGs

  • Nessa fase do projeto, você deverá repetir exatamente o que você aprendeu nesse capítulo.
  • Você também deverá exibir as tags de um determinado produto, no momento da exibição do mesmo na loja. Cada tag deverá ter um link que, quando clicado, deverá encaminhar o usuário para uma página onde teremos a listagem de todos os produtos associados a tag correspondente.

Fase 12 do projeto

CART

  • Nessa fase do projeto, você deverá criar o carrinho de compras como demonstrado, porém, no próprio carrinho, você deverá adicionar uma opção para que possamos alterar a quantidade de um determinado produto.
  • Fique livre para utilizar javascript (ou não), para que possamos realizar uma requisição de atualização no carrinho em relação a quantidade de um produto.

Bruno Castro - Development

About

Curso laravel Code Education - Ecommerce


Languages

Language:PHP 49.6%Language:JavaScript 44.4%Language:HTML 5.9%Language:ApacheConf 0.1%