Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > symfony
symfony Forum d'entraide sur le framework PHP symfony. Avant de poster : cours symfony et FAQ symfony
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/01/2011, 19h27   #1
Futur Membre du Club
 
nicolas lefebvre
Inscription : mai 2010
Messages : 72
Détails du profil
Informations personnelles :
Nom : nicolas lefebvre

Informations forums :
Inscription : mai 2010
Messages : 72
Points : 18
Points : 18
Par défaut [route] Pagination routing symfony1.4

slt j'aimerai que l'url face http://mon_site/module/page/1 mais pour
le moment elle fais http://mon_site/module?page=2

dans ma route j'ai mie:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
presse:
 url:     /presse/:page
 class:   sfDoctrineRoute
 options: { model: Cquesnelpresse, type: object }
 param:   { module: presse, action: index , page: 1 }
 requirements:
   page: d+
   page:  "[w/_.]+"
   sf_method: [get]
 
presse_page:
 url:   /presse:page.html
 param: { module: presse, action: index }
le code de mon _pagination
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
<?PHP $page_link = url_for('/presse?page=', true);?>
<?php echo link_to('« préc', $page_link.$pager->getFirstPage()) ?>
 
 
 
<?php if ($pager->haveToPaginate()): ?>
<?php $links = $pager->getLinks(); foreach ($links as $page): ?>
 
<?php echo ($page == $pager->getPage()) ? $page : link_to($page, $page_link.$page) ?>
 
<?php endforeach ?>
<?php endif ?>
 
 
 
<?php echo link_to('suiv »', $page_link.$pager->getLastPage()) ?>
<div class="pagination_desc">
  <strong><?php echo count($pager) ?></strong> robe de mariage dans cette categorie
 
  <?php if ($pager->haveToPaginate()): ?>
    - page <strong><?php echo $pager->getPage() ?>/<?php echo $pager->getLastPage() ?></strong>
  <?php endif; ?>
</div>
nlefebvre1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2011, 20h30   #2
Membre habitué
 
Homme Ludovic Henry
Étudiant
Inscription : octobre 2009
Messages : 97
Détails du profil
Informations personnelles :
Nom : Homme Ludovic Henry
Âge : 20
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2009
Messages : 97
Points : 105
Points : 105
rajoute de "/*" a la fin des routes ou tu veut que le ?page=2 soit remplacer par /page/2
Inarius est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2011, 23h37   #3
Futur Membre du Club
 
nicolas lefebvre
Inscription : mai 2010
Messages : 72
Détails du profil
Informations personnelles :
Nom : nicolas lefebvre

Informations forums :
Inscription : mai 2010
Messages : 72
Points : 18
Points : 18
alors j'ai avancer grasse a ton aide mais c'est pas ça encore.
voilà lorques que je mais la route
Code :
1
2
3
4
5
6
7
8
collection_page_user:
  url:     /collection/page/*
  class:   sfDoctrineRoute
  options: { model: api, type: list }
  param:   { module: collection, action: index}
  requirements:
    page:  \d+
    sf_method: [get]
l'url fini part page2 si je mais un '/' dans l'url sois page/2 sa marche
mais si je mais la route
Code :
1
2
3
4
5
6
7
8
collection_page_user:
  url:     /collection/page/
  class:   sfDoctrineRoute
  options: { model: api, type: list }
  param:   { module: collection, action: index}
  requirements:
    page:  \d+
    sf_method: [get]
sois le * en moins l'url donne bien page/2 mais se n'est plus dans la pagination
nlefebvre1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2011, 11h03   #4
Modérateur
 
Avatar de Michel Rotta
 
Homme Michel Rotta
Responsable d'exploitation informatique
Inscription : septembre 2005
Messages : 4 913
Détails du profil
Informations personnelles :
Nom : Homme Michel Rotta
Âge : 49
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Responsable d'exploitation informatique
Secteur : Distribution

Informations forums :
Inscription : septembre 2005
Messages : 4 913
Points : 7 505
Points : 7 505
La route :
Code :
1
2
3
4
5
6
7
8
9
 
collection_page_user:
  url:     /collection/page/:page.html
  class:   sfDoctrineRoute
  options: { model: api, type: list }
  param:   { module: collection, action: index}
  requirements:
    page:  \d+
    sf_method: [get]
Dans ton template tu dois utilise le helper link_to pour créer le lien
Code :
link_to($page,'@collection_page_user?page=' . $page)
Lors de la création du lien, symfony va chercher la route 'collection_page_user' et va la rédiger en fonction de son url et du paramètre 'page' que tu lui a envoyés.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
  • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
  • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
  • Une discussion est terminée ? Alors le bouton est votre ami !
Michel Rotta est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 11/01/2011, 13h24   #5
Futur Membre du Club
 
nicolas lefebvre
Inscription : mai 2010
Messages : 72
Détails du profil
Informations personnelles :
Nom : nicolas lefebvre

Informations forums :
Inscription : mai 2010
Messages : 72
Points : 18
Points : 18
super!! c'est çà grand merci Michel Rotta
nlefebvre1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h34.


 
 
 
 
Partenaires

Hébergement Web