Salut à tous.
Je me tourne vers ce forum parce depuis deux jours je fais face à un problème. donc je travaille sur symfony et j'ai voulu créer un champs autocomplete à laide de sfWidgetFormDoctrineJQueryAutocomplete . Pour cela j'ai suivi un peu les conseil d'implémentation du plugin que j'ai trouvé sur le net. Ce qui m'a amené a pondre le code qui suit
C’est le widget sfWidgetFormDoctrineJQueryAutocomplete :
Puis je crée l’action correspondante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $this->widgetSchema['input_auto'] = new sfWidgetFormDoctrineChoice(Array( 'model'=>'Article', 'renderer_class'=>'sfWidgetFormDoctrineJQueryAutocompleter', 'renderer_options'=>(array( 'model'=>'Article', 'url'=>'Home/search'))));
Du coté du modèle, je fais ma requête
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 public function executeSearch(sfWebRequest $request) { $this->getResponse()->setContentType('application/json'); $q = $request->getParameter('q'); $limit = $request->getParameter('limit'); $req = Doctrine::getTable('Article')->getDataWhere($q, $limit); $results = array(); foreach ( $req as $result ) $results[$result->getId()] = (string) $result; $this->testeur=array(); $this->testeur=$results; return $this->renderText(json_encode($results)); }
Puis j'ai inclus les fichiers javascript/css nécessaire au widget dans le partial "_form"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public function getDatatWhere($q, $limit=10) { $query= Doctrine_Query::Create() ->where('title LIKE ?',"%$q%") ->limit($limit) ->execute() ->getData(); return $query; }
Mon formulaire s'affiche normalement on ne me signale aucune erreur. Mais quand je tape kelke chose dans le champ j'ai une image de chargement qui tourne dans le vide. On dirait qu'il travail mais qu'il ne trouve rien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <?php use_javascript('/sfFormExtraPlugin/js/jquery.autocompleter.js') ?> <?php use_stylesheet('/sfFormExtraPlugin/css/jquery.autocompleter.css') ?>
Si quelqu'un a une idée ou une idée je suis prenneur.
Ou à la limite est ce que kelkun oré une idée de comment je peux voir ce ki est recupéré par ma requete Doctrine::getTable.
Merci d'avance.
Partager