Bonjour,
Voila je rencontre un petit problème avec mon code.
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\HttpFoundation\Request;
use Doctrine\ORM\EntityManagerInterface;
use App\Entity\Article;
use App\Form\ArticleType;
use App\Repository\ArticleRepository;
use Fake\Factory;
class BlogController extends AbstractController
{
/**
@Route("/", name="home")
*/
public function home(){
$form = Factory::create('Fr_fr');
var_dump($form);
return $this->render('blog/home.html.twig');
}
/**
@Route("/blog", name="blog")
*/
public function index(ArticleRepository $repo)
{
$articles = $repo->findAll();
return $this->render('blog/index.html.twig', [
'controller_name' => 'BlogController',
'articles' => $articles,
]);
}
/**
@Route("/blog/{id}/edit", name="blog_edit")
*/
public function form(Article $article = null, Request $request, EntityManagerInterface $manager){
($article) ? null : $article = new Article();
// $form =$this->createFormBuilder($article)
// ->add('title')
// ->add('content')
// ->add('image')
// ->getForm();
$form = $this->createForm(ArticleType::class, $article); //Création de l'objet de formulaire
$form->handleRequest($request); //Analyse de la requêtte et remplissage si besoin de l'article
if($form->isSubmitted() && $form->isValid()){
($article->getId()) ? null : $article->setCreatedAt(new \DateTime());
$manager->persist($article);
$manager->flush();
return $this->redirectToRoute('blog_show', ['id' => $article->getId()]);
}
return $this->render("blog/form.html.twig", [
'formArticle' => $form->createView(),
'editMode' => $article->getId() !== null
]);
}
/**
Je voudrais utiliser un Faker pour générer des fixtures, mais le framework ne retrouve pas la librairie et renvoie le message suivant :
Did you forget a "use" statement for e.g. "Faker\Factory" or "Doctrine\Migrations\Version\Factory"? ```
je penses personnelement qu'il s'agit d'un problème de namespace mais je n'ai aucune idée de comment le resoudre.
Y'a t'il un moyen de me sortir de là?
Merci de votre aide ;)
Bonne journée !