Curso Ministrado pelo Prof. Luiz Carlos Diniz
Nesta fase você deverá cria o ambiente da aplicação Laravel 5.3 mostrado no capítulo inicial, bem como o CRUD de categorias.
Você deverá criar também um CRUD para os livros da loja virtual.
-
O model livro deverá conter os seguintes campos:
- title - string (obrigatório)
- subtitle - string (obrigatório)
- price - float (obrigatório)
Nesta fase você deverá criar um form request validation para categoria e livro.
Crie também as regras de validação para os campos de cada modelo.
Agora você deverá criar uma relação entre livro e autor.
Todo livro cadastrado deverá ter o seu respectivo autor associado. A edição dos dados do livro só poderá ser feita pelo próprio autor, então, teremos que usar o form request validation para autorizar isto.
Nesta fase você deverá aplicar o Bootstrapper nos CRUD de categorias e livros.
Além disto quando o usuário enviar dados via formulário e estes dados forem inválidos e logo em seguida o cadastro for realizado, o usuário deve ser direcionado para a página anterior (Lembrando que no momento isto não ocorre, porque se os dados forem inválidos, a URL armazenada será a da própria página).
Nesta fase você deverá refatorar toda aplicação para trabalhar com repositories e criar buscas na listagem de livros e categorias.
Criar o relacionamento entre livros e categorias.
Adicionar na busca de livros, a oportunidade de buscar livros pelo nome de um categoria por like.
Implementar a exclusão lógica para livros e categorias.
Criar a lixeira de livros.
Estilizar as categorias excluídas quando mostradas na área de livros.
Nesta fase, você deverá criar o módulo de administração de livros e categorias como demonstrado no capítulo.
Obs.: Nas views de criação e edição, precisamos acrescentar o namespace de view para fazer o include do formulário.
Criação da autenticação de administração de usuários.
CRUD de Usuários.
Integração com Laravel User Verification
Envio de Email de Usuários.
Controle de Usuários Não Validados.
Nesta fase você deve implementar a autorização da área administrativa mostrada no capítulo e também toda parte de ACL. Além disto implemente um CRUD de Roles (só admins podem cadastrar roles).
O nome da Role deve ser único no banco de dados, então é necessário validar se o nome não existe e não deve ser permitido excluir a Role Admin padrão.
Nesta fase você deverá fazer as seguintes tarefas
- Terminar a autorização proposta no capítulo usando annotations.
- Permitir o salvamento da desmarcação das permissões associadas aos pápeis de usuários
- Criar a autorização para o módulo de CodeEduBook, ou seja, criar permissões nos controllers/actions do módulo.
- Criar uma migração no módulo de CodeEduBook para adicionar uma role "Autor" no banco de dados. Desafio (opcional): Criar um serviço com facade para montar o menu de usuário de acordo com as permissões dele.
Nesta fase você deverá fazer as seguintes tarefas:
Implementar o cover para todos formatos que serão exportados: (kindle, ebook e pdf). Publicar o livro usando Queues e Jobs. Permitir o download do livro no painel administrativo. Incluir uma permissão de exportação de livro para a role Author. Incluir um livro exportado de exemplo em pdf na raiz da aplicação.
Implementação de notificações via email, sms, broadcasting
Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable, creative experience to be truly fulfilling. Laravel attempts to take the pain out of development by easing common tasks used in the majority of web projects, such as:
- Simple, fast routing engine.
- Powerful dependency injection container.
- Multiple back-ends for session and cache storage.
- Expressive, intuitive database ORM.
- Database agnostic schema migrations.
- Robust background job processing.
- Real-time event broadcasting.
Laravel is accessible, yet powerful, providing tools needed for large, robust applications. A superb combination of simplicity, elegance, and innovation give you tools you need to build any application with which you are tasked.
Laravel has the most extensive and thorough documentation and video tutorial library of any modern web application framework. The Laravel documentation is thorough, complete, and makes it a breeze to get started learning the framework.
If you're not in the mood to read, Laracasts contains over 900 video tutorials on a range of topics including Laravel, modern PHP, unit testing, JavaScript, and more. Boost the skill level of yourself and your entire team by digging into our comprehensive video library.
Thank you for considering contributing to the Laravel framework! The contribution guide can be found in the Laravel documentation.
If you discover a security vulnerability within Laravel, please send an e-mail to Taylor Otwell at [email protected]. All security vulnerabilities will be promptly addressed.
The Laravel framework is open-sourced software licensed under the MIT license.