Bonjour
Dans un filtre en frontend (tout comme dans le backend généré) je n'arrive pas à filtrer dans un textarea (misc).
C'est à dire rechercher une expression "cde" et sortir "abcde", "cdefg"... etc comme en SQL avec un LIKE %$misc%.
Voici un morceau des codes.
Dans l'action c'est du "classique" (buildQuery, setQuery, getQuery, disponible sur demande...)
Schema
TableForm.class.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Table: columns: ... misc: { type: string(4000) } ...
TableFormFilter.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
14
15
16
17
18 class TableForm extends BaseTableForm { public function configure() { $this->useFields(array(..., misc, ....)); $this->setWidgets(array( ... 'misc' => new sfWidgetFormTextarea(array(), array('rows' => 5, 'cols' => 28)), ...)); $this->setValidators(array( ... 'misc' => new sfValidatorString(array('max_length' => 4000, 'required' => false)), ...)); $this->widgetSchema->setNameFormat('table[%s]'); } }
Si quelqu'un voit ce qui manque / cloche....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 class FrcapFormFilter extends BaseFrcapFormFilter { public function configure() { ... $this->widgetSchema['misc'] = new sfWidgetFormTextArea(array(), array('rows' => 5, 'cols' => 30)); ... } }
Ce sera Noël pour moi....
Partager