Bonjour, dans le cadre d'une appli, j'ai une liste admingen avec des filtres, cependant j'ai besoin d'ajouter un criteria pour filtrer dans un premier l'affichage global de la liste(je veux que les utilisateurs puisse voir les commandes du marché dans lequel ils sont et pas d'autres).
Le builde Criteria marche bien, mais les filtres après ne marchent plus.
Voici mon code d'action class :
Et voici le contenu de mon fichier generator.yml
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
20
21
22
23
24
25
26
27
28
29
30
31 /** * Overrides the preExecute based implementation * to set the user from the custom configuration obejct. * * @return void */ public function preExecute() { parent::preExecute(); $this->configuration->setUser($this->getUser()); $this->checkMarket(); $this->dispatcher->connect('admin.build_query', array($this,'myBuildCriteria')); } /** * Build order list with Criteria * * @param sfEvent $event as eventLoading object * @param Doctrine_Query $query as Doctrine Query * * @return JSON Array */ public function myBuildCriteria($event, Doctrine_Query $query) { if ($this->getUser()->getMarket()->getId()) { $query=Doctrine::getTable('Order')->createQuery() ->select()->from('Order')->where('market_id= ?', $this->getUser()->getMarket()->getId()); } return $query; }
Je me suis dit que je pouvais mettre le criteria dans l'executeIndex mais apparemment il veut pas l'exécuter a cet endroit là
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
20
21
22
23
24
25
26
27
28
29 generator: class: sfDoctrineGenerator param: model_class: Order theme: admin non_verbose_templates: true with_show: false singular: ~ plural: ~ route_prefix: order with_doctrine_route: true actions_base_class: sfActions config: actions: ~ fields: ~ list: display: [ order_number, status, created_at, updated_at ] object_actions: Print Order: ~ Edit: ~ _delete: ~ filter: display: [ order_number, status, created_at, updated_at ] form: display: [ order_number, customer_number, salesman_number, currency_id, purchase_order_number, last_modified_by_id ] edit: ~ new: ~
D'avance Merci
Partager