Bonjour,
j'ai ajouté un champ sfWidgetFormJQueryAutocompleter dans mon appli.
Ma question est la suivante : si j'entre une valeur non-préalablement existante dans ma base, comment faire pour que cette valeur soit sauvegardée ?
(Actuellement, elle me met un chiffre à la place de la chaîne tapée...)
MobiliteTable.php
MobiliteForm.class.php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public function getDataWhere($string) { $q = Doctrine_Query::create() ->select('nature') ->from('Mobilite') ->where('nature LIKE ?', "%$string%") ->orderBy('nature ASC') ->execute() ->getData(); return $q; }
action.class.php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 public function configure() { $this->addWidgets(); } protected function addWidgets() { $this->widgetSchema['nature'] = new sfWidgetFormJQueryAutocompleter(array( 'url' => ('/myaction'), 'config' => '{ scrollHeight: 250 , autoFill: false }' )); }
Je creuse, je creuse mais je ne vois pas...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public function executeMyAction(sfWebRequest $request) { $this->getResponse()->setContentType('application/json'); $string = $request->getParameter('q'); $req = Doctrine::getTable('Mobilite')->getDataWhere($string); $results = array(); foreach ( $req as $result ){ $results[$result->getId()] = $result->getNature(); } return $this->renderText(json_encode($results)); }
Est-il simplement impossible d'ajouter une nouvelle valeur dans un sfWidgetFormJQueryAutocompleter ?
Partager