GithubHelp home page GithubHelp logo

gregurco / jobeet-tutorial Goto Github PK

View Code? Open in Web Editor NEW
134.0 30.0 35.0 2.68 MB

๐Ÿ“– Symfony 4.2 Jobeet Tutorial

Home Page: https://jobeet-tutorial.rtfd.io

License: MIT License

symfony jobeet symfony4 tutorial jobeet-tutorial symfony-tutorial php

jobeet-tutorial's Introduction

Symfony 4.2 Jobeet Tutorial

Documentation Status License: MIT

Jobeet is a great tutorial on how to build a fully functional job board site. It was written by the Symfony team for Symfony 1.x version and I want to adapt it for Symfony 4.2.

In the following weeks I will begin to post the parts of making the Jobeet site using Symfony 4.2, so it will help beginners to learn and understand how the framework works.
I will try to follow the original Jobeet tutorial, but I will also make some changes to include new technologies and to reflect my personal developing style.

Please be free to make any observations and improvements you consider important by commenting on the posts that will follow.

List of days

Jobeet Day 1: Starting up the Project

Jobeet Day 2: The Project

Jobeet Day 3: The Data Model

Jobeet Day 4: The Controller and the View

Jobeet Day 5: The Routing

Jobeet Day 6: More with the Entity

Jobeet Day 7: Playing with the Category Page

Jobeet Day 8: The Forms

Jobeet Day 9: Console Commands

Jobeet Day 10: The Admin

Jobeet Day 11: The User

Jobeet Day 12: The API

Jobeet Day 13: The Mailer

Jobeet Day 14: Translations

Jobeet Day 15: The Unit Tests

Jobeet Day 16: The Functional Tests

Jobeet Day 17: The Cache

Jobeet Day 18: The Deployment

Feedback

If something is not clear, is described not properly or you know the way to describe it better then feel free to open an issue.

Track the progress

We are still working to finish the tutorial and you can track the progress and plans here.

Also donโ€™t forget to click on "Star" and "Watch" buttons. Itโ€™s really motivating.

Contributors

This project is brought to you by these awesome contributors:

License

This project is licensed under the MIT License - see the LICENSE file for details.

jobeet-tutorial's People

Contributors

benroe avatar eclimov avatar gregurco avatar kdefives avatar khrapeichuk avatar lex111 avatar orkhanfarmanli avatar slash3b avatar vjandrea avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

jobeet-tutorial's Issues

Day 10 : The Admin - Delete job action fix

Hi!

Just one small tip, there is an issue on your tutorial in "The admin", Job section, delete action on controller.

Instead of adding @param Job $job and adding Job $job, in your parameters in your delete action, you added @param Category $category and Category $category there.

I tried to make it work as said in your tutorial (with Category $category in controller) and it didn't. So, I replaced it with Job $job. (As I noticed that most of actions in the JobController required Job $job)

Can you replace this in your tutorial ? Thank you !

Will there come any new tutorials?

I look almost every day onto the Jobeet page for month now.
I am wondering if the rest of the tutorials will be uploaded.

Best regards
Michael

Extends ServiceEntityRepository instead of EntityRepository

In the day 6, with SF 4, we could extend ServiceEntityRepository for the repositories as per the symfony doc

It allows you to use autowiring and thus less boiler plate.

use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
use Doctrine\Common\Persistence\ManagerRegistry;

class CategoryRepository extends ServiceEntityRepository
{
    public function __construct(ManagerRegistry $registry)
    {
        parent::__construct($registry, Category::class);
    }
...
}

and then in the JobController

use App\Repository\CategoryRepository;
...

public function list(CategoryRepository $categoryRepository) : Response
{
    $categories = $categoryRepository->findWithActiveJobs();

    return $this->render('job/list.html.twig', [
            'categories' => $categories,
     ]);
}

Anyway it also works with EntityRepository.

Thanks for the great Job.

Show job route

First, thanks so much for taking this on!

I'm not 100% sure about this, but on day 5:

the wildcard * which stands for ID in the given example

there is no * in the code above it

Day 7 - Wrong variable name in List Pagination paragraph

Close to the end of the paragraph there is this text.
We added page in the URL path and defined default value, in case when page is not defined in the URL (ex: /category/design). Variable $path is added in arguments of the method. It will be injected automatically by name in path. Also we need parameter max_jobs_on_category and getParameter methods to access it. Thatโ€™s why this controller extends now Symfony\Bundle\FrameworkBundle\Controller\Controller but not Symfony\Bundle\FrameworkBundle\Controller\AbstractController.

Shouldn't it be the $page variable?

Category does not exist

Hi!

I'm currently doing your tutorial, I'm on Day 7 (you need to add your missing comma on your tutorial right before $page on CategoryController.php on function show() ).

I have currently an issue, when I go to the main page ("/") it says that none of the methods like activeJobs() exists and have a public access in class App\Entity\Category.

Do you have a fix for this ? Thank you!

use Doctrine\Common\Persistence\ObjectManager;

In Day 3 when creating CategoryFixtures and JobFixtures classes it should be:
use Doctrine\Persistence\ObjectManager;
instead of:
use Doctrine\Common\Persistence\ObjectManager;
using Symfony 4.4.35

composer require doctrine/doctrine-migrations-bundle not working

Hi,
i am at the point (Day 3), where the following command is used.

composer require doctrine/doctrine-migrations-bundle

but i get this error. Any advice?

Using version ^2.0 for doctrine/doctrine-migrations-bundle
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - symfony/orm-pack v1.0.5 requires doctrine/doctrine-migrations-bundle ^1.3 -> satisfiable by doctrine/doctrine-migrations-bundle[1.3.x-dev, v1.3.0, v1.3.1, v1.3.2] but these conflict with your requirements or minimum-stability.
    - symfony/orm-pack v1.0.5 requires doctrine/doctrine-migrations-bundle ^1.3 -> satisfiable by doctrine/doctrine-migrations-bundle[1.3.x-dev, v1.3.0, v1.3.1, v1.3.2] but these conflict with your requirements or minimum-stability.
    - symfony/orm-pack v1.0.5 requires doctrine/doctrine-migrations-bundle ^1.3 -> satisfiable by doctrine/doctrine-migrations-bundle[1.3.x-dev, v1.3.0, v1.3.1, v1.3.2] but these conflict with your requirements or minimum-stability.
    - Installation request for symfony/orm-pack (locked at v1.0.5, required as *) -> satisfiable by symfony/orm-pack[v1.0.5].


Installation failed, reverting ./composer.json to its original content.

and the next command is also not working

bin/console doctrine:migration:diff

error

In OrmSchemaProvider.php line 40:

  No mapping information to process

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.