IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Routing avec sfWidgetFormJQueryAutocompleter [1.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2008
    Messages
    176
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2008
    Messages : 176
    Par défaut Routing avec sfWidgetFormJQueryAutocompleter
    Bonjour
    j'ai un petit problème avec le routing et mon widget sfWidgetFormJQueryAutocompleter,
    j'ai une liste d'acteur avec un pager quand je suis sur la premiere page le widget marche l'url de la form localhost:8585/frontend_dev.php/Acteur
    parcontre quand je passe a la seconde page le widget n'affiche aucune donnée url de la forme l'url de la form localhost:8585/frontend_dev.php/Acteur/2
    du coup je pense que c'est lié a ma route qui est definit comme suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Acteur:
      url:  /Acteur/:page
      class: sfRequestRoute
      param: { module: Acteur, action: index, page: 1 }
      requirements:
       page: \d+
       sf_method: [get]

    module/Acteur/actions/actions.class.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    public function executeIndex(sfWebRequest $request)
      {
      	$this->formrecherche=new SearchForm();
      	$this->acteurArray=ActeurPeer::getAllActeur($request->getParameter('page'),sfConfig::get('app_total_items_acteur'));
      	return sfView::SUCCESS;
      }
    le module dans lequel j'ai crée le code pour gérer les appels envoyé par sfWidgetFormJQueryAutocompleter
    module/recherche/actions/actions.class.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public function executeActeursearch(sfWebRequest $request)
      {
      	$this->getResponse()->setContentType('application/json');
      	$acteur=ActeurPeer::searchActeurAjax($request->getParameter('q'), $request->getParameter('limit'));
      	$this->renderText(json_encode($acteur));
        return sfView::NONE;	
      	
      }
    et puis le code des Form d'autocompleter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    class SearchForm extends sfForm
    {
    	public function configure()
    	{			
    		$this->setWidgets(array(
    							'ActeurRecherche' 		=> new sfWidgetFormJQueryAutocompleter(array('url' => 'Recherche/acteursearch')),
    							'StudioRecherche'	 		=> new sfWidgetFormJQueryAutocompleter(array('url' => 'Recherche/studiosearch')),
    							'FilmRecherche'	 		=> new sfWidgetFormJQueryAutocompleter(array('url' => 'Recherche/filmsearch')),
    							, 
     
    								));
    	}	
    }
    any idea !!?

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2008
    Messages : 186
    Par défaut
    Salut,

    En fait tu as un champs input pour les acteurs par exemple, et il devrait t'afficher la liste des acteurs trouvés ? c'est ça ?

    Et le second problème c'est la pagination qui ne fonctionne pas ?

    C'est pour essayer d'y voir clair avant de répondre !

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2008
    Messages
    176
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2008
    Messages : 176
    Par défaut
    Salut
    le pager marche, le probléme est que :
    quand je suis dans la premiere page avec cette url : localhost:8585/frontend_dev.php/Acteur
    le champs que j'ai réalisé avec sfwidgetformjqueryautocompleter m'affiche les noms des acteur qui sont dans la base au fur et a mesure que j'insère les lettres
    voici une capture d'ecran d'un exemple d'insertion dans un input


    Comme j'ai une liste importante d'acteur j'ai réalisé un pager pour afficher juste 25 acteur par page.
    du coup quand je passe a la seconde page dont voici l'url localhost:8585/frontend_dev.php/Acteur/2 " mon input de recherche cesse de marcher.
    donc je pense que la cause est surement lié au routing "car mon input marche uniquement quand je suis dans la première page avec l'url décrit en au dessus"
    Images attachées Images attachées  

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2008
    Messages : 186
    Par défaut
    Et dans la barre de débug de symfony ? Ou Firebug même si tu l'as.

    Regardes ce qui se passe lorsque tu entres des lettres dans le champs texte. Cherches avec firebug dans la partie réseau si il y a des requêtes effectuées.

    Sinon pour la route, ça a l'air d'aller, l'option page: 1 dans les paramètres sert à mettre une valeur par défaut c'est ça ?

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2008
    Messages
    176
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2008
    Messages : 176
    Par défaut
    j'ai utilisé firebug et voici le resultat de l'url ...en rouge quand je suis dans la page 2
    http://localhost:8585/frontend_dev.php/Acteur/Recherche/acteursearch?q=s&limit=0&timestamp=1279628101075
    or qu'il doit être comme ça
    http://localhost:8585/frontend_dev.php/Recherche/acteursearch?q=s&limit=0&timestamp=1279628101075
    car pour j'ai preferé mettre le code correspondant aux input dans un module a part qui est Recherche

    pour l'option page: 1 est une valeur par default

  6. #6
    Membre expérimenté

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2008
    Messages : 186
    Par défaut
    Et dans le template ? Comment génères tu la route ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 12
    Dernier message: 30/07/2014, 13h05
  2. probleme de routing avec ISA 2006
    Par maikess dans le forum Sécurité
    Réponses: 0
    Dernier message: 17/05/2010, 12h03
  3. Réponses: 4
    Dernier message: 12/04/2010, 16h48
  4. [1.x] Routing avec url_for()
    Par koli77 dans le forum Symfony
    Réponses: 5
    Dernier message: 29/12/2009, 14h08
  5. Ruby on Rails et Routes avec 2 tables reliées
    Par Miles Raymond dans le forum Ruby on Rails
    Réponses: 2
    Dernier message: 17/06/2009, 08h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo