Bonjour,

Voila je rencontre un petit problème avec mon code.

je fais

un blog,
j'essais de suivre le tutos https://openclassrooms.com/courses/e...rquoi-ce-cours
le code source est disponible sur https://github.com/bpesquet/OC-MicroCMS/tree/iteration-09

Ce que je veux

quel peut etre un argument de type Symfony\Bridge\Twig\Form\TwigRendererInterface.
merci pour tout eclaircessement.

Ce que j'obtiens

1/1) ContextErrorException

Catchable Fatal Error: Argument 1 passed to Symfony\Bridge\Twig\Extension\FormExtension::__construct() must be an instance of Symfony\Bridge\Twig\Form\TwigRendererInterface, instance of Symfony\Component\Form\FormRenderer given, called in C:\wamp64\www\stpoSilex\vendor\silex\silex\src\Silex\Provider\TwigServiceProvider.php on line 138 and defined

in FormExtension.php line 34
at FormExtension->__construct(object(FormRenderer))in TwigServiceProvider.php line 138
at TwigServiceProvider->Silex\Provider{closure}(object(Application))in Container.php line 118
at Container->offsetGet('twig')in routes.php line 10
at {closure}()
at call_user_func_array(object(Closure), array())in HttpKernel.php line 151
at HttpKernel->handleRaw(object(Request), 1)in HttpKernel.php line 68
at HttpKernel->handle(object(Request), 1, true)in Application.php line 496
at Application->handle(object(Request))in Application.php line 477
at Application->run()in index.php line 11

la ligne 138 du fichier
C:\wamp64\www\stpoSilex\vendor\silex\silex\src\Silex\Provider\TwigServiceProvider.php donne
$twig->addExtension(new FormExtension(class_exists(HttpKernelRuntime::class) ? null : $app['twig.form.renderer']));

14 réponses


Toogda
Auteur
Réponse acceptée

J'ai également le dossier vendor .  Mon programme foncitionait jusqu'à l'iteration 8. Cette erreur est apparu à la fin de l'iteration 9.

Dans le code source, il n'y a pas le vendor qui contient les dépendances ! Ma question est :
Tu as mis à jours les dépendances ? car il semble qu'il te manque twig.

{
    "require": {
        "silex/silex": "~2.0",
        "doctrine/dbal": "~2.5",
        "twig/twig": "~1.28", // Cette dependance
        "symfony/twig-bridge": "~2.8|3.0.*",
        "symfony/asset": "~2.8|3.0.*",
        "symfony/security": "~2.8|3.0.*",
        "symfony/form": "~2.8|3.0.*",
        "symfony/translation": "~2.8|3.0.*",
        "symfony/config": "~2.8|3.0.*"
    },
    "autoload": {
        "psr-4": {"MicroCMS\\": "src"}
    }
}

Essaye d'executer cette ligne de commande dans la racine du dossier du projet.

composer update 
Toogda
Auteur

Salut, merci de prêté attention à ma préoccupation.  
La dépendance "twig/twig": "~1.28" est bien présent dans le fichier composer.jason

Oui, mais as-tu un dossier vendor ?

Tu ne dois pas comprendre le système de composer.
C'est un outil qui gère tes dépendances: ici tu as besoin de twig, au lieu de push sur un git tout le projet tu push tout sauf le vendor qui est lourd et le composer.json va répertorier l'ensembe des dépendances que le projet a besoin. Ici twig, si tu n'as pas de dossier vendor, c'est que les dépendances ne sont pas installées.
Ainsi, tu dois te rendre dans le dossier du projet à la racine où tu as le composer.json, ouvrir un terminal à cet endroit et lancer la commande

composer update
Toogda
Auteur

J'ai également le dossier vendor . Mon programme foncitionait jusqu'à l'iteration 8. Cette erreur est apparu à la fin de l'iteration 9.

As-tu discord ? Si oui viens : Mehdikacim#9029

Toogda
Auteur

mon . discord c'est quoi?

As-tu teamviewer ?

Toogda
Auteur

je le telecharge de suite

Il y a un Discord pour le site (voir Tchat dans le footer), par contre penses quand même à venir poster la solution ici si tu la trouve.
Sinon Togda, ne marques ton sujet que quand ton problème est réellement résolu, pas comme tu l'as fait actuellement.

Toogda
Auteur

Je l'ai fait par mégarde, je cherchais même le bouton non résolu.

Peux-tu me communiquer tes id par mail : mehdikacim@hotmail.fr et on regardera ensemble le soucis, afin de le communiquer ici.

Bonjour,

J'ai également le même problème, avez-vous trouvé une solution ?