Partage
  • Partager sur Facebook
  • Partager sur Twitter

Symfony sg\datatablesBundle

    24 mai 2018 à 15:59:32

    Bonjour; 

    j ai un pb 

    voila j'essai de récupérer le contenu de ma table via le bundle datatableBundle 

    mais après avoir écris mon code ma table est vide  

    voici mon controlleur:

     public function affichageFormulaireAction(Request $request)

    	{
    	 $isAjax= $request->isXmlHttpRequest();
    	
        $datatable = $this->get('sg_datatables.factory')->create(RessourcesDatatable::class); // We have to provide the appropriate class name here
    	
    	$datatable->buildDatatable();
    	var_dump($datatable);
    	if ($isAjax)
    	{
    		
    		$responseService = $this->get('sg_datatables.response');
    		$responseService->setDatatable($datatable);
    
    		$datatableQueryBuilder = $responseService->getDatatableQueryBuilder();
    
    		$datatableQueryBuilder->buildQuery();
    
    		return $responseService->getResponse();
    	}
        return $this->render('PSAApplicationBundle:Ressource:AfficheFormulaire.html.twig', array(
            'datatable' => $datatable));
    	
    	}
    voici mon datatablebundleRessources
    <?php
    
    namespace PSA\ApplicationBundle\Datatables;
    
    use Sg\DatatablesBundle\Datatable\AbstractDatatable;
    use Sg\DatatablesBundle\Datatable\Style;
    use Sg\DatatablesBundle\Datatable\Column\Column;
    use Sg\DatatablesBundle\Datatable\Column\BooleanColumn;
    use Sg\DatatablesBundle\Datatable\Column\ActionColumn;
    use Sg\DatatablesBundle\Datatable\Column\MultiselectColumn;
    use Sg\DatatablesBundle\Datatable\Column\VirtualColumn;
    use Sg\DatatablesBundle\Datatable\Column\DateTimeColumn;
    use Sg\DatatablesBundle\Datatable\Column\ImageColumn;
    use Sg\DatatablesBundle\Datatable\Filter\TextFilter;
    use Sg\DatatablesBundle\Datatable\Filter\NumberFilter;
    use Sg\DatatablesBundle\Datatable\Filter\SelectFilter;
    use Sg\DatatablesBundle\Datatable\Filter\DateRangeFilter;
    use Sg\DatatablesBundle\Datatable\Editable\CombodateEditable;
    use Sg\DatatablesBundle\Datatable\Editable\SelectEditable;
    use Sg\DatatablesBundle\Datatable\Editable\TextareaEditable;
    use Sg\DatatablesBundle\Datatable\Editable\TextEditable;
    
    /**
     * Class RessourcesDatatable
     *
     * @package PSA\ApplicationBundle\Datatables
     */
    class RessourcesDatatable extends AbstractDatatable
    {
        /**
         * {@inheritdoc}
         */
        public function buildDatatable(array $options = array())
        {
            $this->language->set(array(
                'cdn_language_by_locale' => true
                //'language' => 'de'
            ));
            $this->ajax->set(array(
    	
    		'url' => $this->router->generate('psa_app_ressource_affichage'),
            'type' => 'GET'));
    
            $this->options->set(array(
    			'classes' => Style::BOOTSTRAP_3_STYLE,
    			'paging_type' => Style::FULL_NUMBERS_PAGINATION,
    			'stripe_classes' => [ 'strip1', 'strip2', 'strip3' ],
                'individual_filtering' => true,
                'individual_filtering_position' => 'head',
                'order_cells_top' => true,
    
            ));
    
            $this->features->set(array(
            ));
    
            $this->columnBuilder
                ->add('id', Column::class, array(
                    'title' => 'Id',
                    ))
                ->add('montant', Column::class, array(
                    'title' => 'Montant',
    				'searchable' => true,
    				'orderable' => true,
    				'editable' => array(TextEditable::class, array(
    					'placeholder' => 'Edit value',
    					'empty_text' => 'Empty Text'
                    ))
    				))
    				
                ->add('activite', Column::class, array(
                    'title' => 'Activite',
    				'searchable' => true,
    				'orderable' => true,
    				'editable' => array(TextEditable::class, array(
               
    					'placeholder' => 'Edit value',
    					'empty_text' => 'Empty Text'))
                    ))
                ->add('service', Column::class, array(
                    'title' => 'Service',
    				'editable' => array(TextEditable::class, array(
               
    					'placeholder' => 'Edit value',
    					'empty_text' => 'Empty Text'))
                    ))
                ->add('nature', Column::class, array(
                    'title' => 'Nature',
    				'editable' => array(TextEditable::class, array(
               
    					'placeholder' => 'Edit value',
    					'empty_text' => 'Empty Text'))
                    ))
    				
                ->add('libelle', Column::class, array(
                    'title' => 'Libelle',
                    ))
                ->add('colonne1', Column::class, array(
                    'title' => 'Colonne1',
    				'editable' => array(TextareaEditable::class, array(
               
    					'rows' => 50))
                    ))
                ->add('colonne2', Column::class, array(
                    'title' => 'Colonne2',
    				'editable' => array(TextareaEditable::class, array(
               
    					'rows' => 50))
                    ))
                ->add('colonne3', Column::class, array(
                    'title' => 'Colonne3',
    				'editable' => array(TextareaEditable::class, array(
               
    					'rows' => 50))
                    ))
                ->add('colonne4', Column::class, array(
                    'title' => 'Colonne4',
    				'editable' => array(TextareaEditable::class, array(
               
    					'rows' => 50))
                    ))
    				
                ->add(null, ActionColumn::class, array(
                    'title' => $this->translator->trans('sg.datatables.actions.title'),
                    'actions' => array(
                        array(
                            'route' => 'ressources_show',
                            'route_parameters' => array(
                                'id' => 'id'
                            ),
                            'label' => $this->translator->trans('sg.datatables.actions.show'),
                            'icon' => 'glyphicon glyphicon-eye-open',
                            'attributes' => array(
                                'rel' => 'tooltip',
                                'title' => $this->translator->trans('sg.datatables.actions.show'),
                                'class' => 'btn btn-primary btn-xs',
                                'role' => 'button'
                            ),
                        ),
                        array(
                            'route' => 'ressources_edit',
                            'route_parameters' => array(
                                'id' => 'id'
                            ),
                            'label' => $this->translator->trans('sg.datatables.actions.edit'),
                            'icon' => 'glyphicon glyphicon-edit',
                            'attributes' => array(
                                'rel' => 'tooltip',
                                'title' => $this->translator->trans('sg.datatables.actions.edit'),
                                'class' => 'btn btn-primary btn-xs',
                                'role' => 'button'
                            ),
                        )
                    )
                ))
            ;
        }
    
        /**
         * {@inheritdoc}
         */
        public function getEntity()
        {
            return 'PSA\ApplicationBundle\Entity\Ressources';
        }
    
        /**
         * {@inheritdoc}
         */
        public function getName()
        {
            return 'ressources_datatable';
        }
    }
    
     
    pouvez vous me donner un coup de main,
    je pense que le pb viens de ''data' qui n'est pas défini dans le $this->ajax->set
    mais comment définr 'data' pour envoyer les données de ma table 
    lorsque j'affiche j obtiens cette image:

    je suis un peu perdu 

    • Partager sur Facebook
    • Partager sur Twitter
      19 octobre 2018 à 1:01:31

      toujours pas de solution? j'y galère dessus moi aussi
      • Partager sur Facebook
      • Partager sur Twitter

      Symfony sg\datatablesBundle

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown