La Ferme du web - Les forums

Venez baraguiner avec la communauté !

Vous n'êtes pas identifié.

#1 14/05/2011 17:45:08

java24
Membre
Date d'inscription: 14/05/2011
Messages: 3

Tuto Symfony problème formulaire

Bonjour à tous, étant débutant avec symfony j'ai décidé de suive le magnifique tuto :
http://www.lafermeduweb.net/tutorial/le … y-p47.html

J'utilise la version 1.4.11

Je rencontre un problème avec le module membre, action new. Je tiens à préciser que je n'ai pas opté pour l'internationalisation, j'ai juste installé le plugin sfFormExtraPlugin pour les formulaires. De plus j'ai suivi les étapes précédentes du tuto ainsi que la configuration du formulaire et du rendu mais lorsque je tente d’accéder à la page register.html (page ou se trouve le formulaire) je rencontre l'erreur suivante :
Empty module and/or action after parsing the URL "/fr_FR/register.html" (/).

Voici le routing que j'utilise :

Code:

register:
  url: /:sf_culture/register.html
  param: { module: membre, action: new }
  requirements:
    sf_culture: (?:fr|en)

Autre routing :

Code:

register:
  url: /register.html
  param: { module: membre, action: new }

Avec celui-ci j'arrive à accéder à la page mais cette fois le formulaire ne s'affiche pas et j'ai le droit à l'erreur suivante :
Fatal error: Call to undefined function __() in C:\wamp2\www\test\apps\frontend\modules\membre\templates\newSuccess.php on line 1

Contenu de newSuccess.php :

Code:

<h1><?php echo __('Inscription'); ?></h1>

<?php include_partial('form', array('form' => $form)) ?>

Pour les autres fichiers j'ai exactement le même contenu que celui du tuto.
Je suis un peu perdu comme vous pouvez le constater, pouvez vous m'aider s'il vous plait.
Merci d'avance

Dernière modification par java24 (14/05/2011 17:47:19)

Hors ligne

 

14/05/2011 17:45:08

Botte De Foin Publicitaire


#2 15/05/2011 21:15:08

Sybio
Administrateur
Date d'inscription: 06/10/2008
Messages: 89
Site web

Re: Tuto Symfony problème formulaire

Salut java24,

En fait ton problème est tout simple ^^
Vu que tu n'utilises pas 2 langues dans ton projet, tu n'as pas configuré la langue en ou fr (dans les fichiers de conf comme settings.yml). Tu ne passes donc pas par l'extension i18n intégrée au framework.

Pour toutes tes routes, fait comme dans ton 2ème exemple ^^
Pour info,

Code:

requirements:
  sf_culture: (?:fr|en)

revient à dire que t'as route possède une variable $_GET['sf_culture'] (dans symfony on l'a récupère comme ça: $request->getParameter('sf_culture')) qui ne peut que recevoir la valeur "en" ou "fr". Ton module n'est pas trouvé car toi tu fais passer "fr_FR" dans ton URL. (alors que tu n’acceptes que "fr" ou "en" !)

T'as route fonctionnera pour l'URL entré si tu l'as configure comme ça:

Code:

register:
     url: /:sf_culture/register.html
     param: { module: membre, action: new }
     requirements:
       sf_culture: (?:fr|en|fr_FR)

Voila pour t'éclairer un peu plus sur le fonctionnement du framework, après inutile de garder le paramètre sf_culture si ton projet ne comporte pas plusieurs langues !

Pour ton template tu utilises la fonction __() propre à l'extension i18n, qui permet de remplacer la chaîne par l'équivalent d'une autre langue. Vu que tu as choisis de ne pas utiliser l'i18n, la fonction est introuvable wink
Pour ton projet fait un simple echo habituel: <?php echo 'Inscription'; ?>

Pour t'apprendre à débugguer, l'erreur Empty module and/or action after parsing the URL "/fr_FR/register.html" (/). signifie soit que tu n'as pas créé le module membre et donc le framework ne le trouve pas, soit que tu n'as pas créé l'action "new" du module membre, soit que t'as route ne correspond à aucune dans ton routing.yml (ce qui est le cas wink)

Voila j'espère que ça t'éclaircit un peu tout ça ^^

Hors ligne

 

#3 20/05/2011 18:55:18

java24
Membre
Date d'inscription: 14/05/2011
Messages: 3

Re: Tuto Symfony problème formulaire

Merci beaucoup, je comprends mieux maintenant l'utilisation d'i18n. smile

Hors ligne

 

Pied de page des forums

Powered by FluxBB
© Copyright 2008-2009 - LaFermeduWeb.net