Salut,

J'ai un petit problème avec sfPager et
sfPropelActAsTaggableBehaviorPlugin. Je veux récupérer tous les items
taggés d'un mot clé. Pour cela, j'utilise le code suivant :

$pager = new sfPropelPager('Item', 10);
$c = TagPeer::getTaggedWithCriteria('UserItem', $this-
>getRequestParameter('tag'));
$c->addDescendingOrderByColumn(ItemPeer::CREATED_AT);
$c->setDistinct(true);
$pager->setCriteria($c);
$pager->setPage($this->getRequestParameter('page', 1));
$pager->setPeerMethod('doSelect');
$pager->init();
$this->items = $pager;

La barre de débug m'affiche 3 requêtes :
- SELECT sf_tagging.TAGGABLE_MODEL, sf_tagging.TAGGABLE_ID FROM
sf_tagging, sf_tag WHERE sf_tag.NAME IN ('optimisation') AND
sf_tagging.TAGGABLE_MODEL='UserItem' AND sf_tag.ID=sf_tagging.TAG_ID
GROUP BY sf_tagging.TAGGABLE_ID HAVING COUNT(sf_tag.ID)>='1'

- SELECT DISTINCT COUNT(DISTINCT item.ID) FROM item, user_item WHERE
user_item.ID IN (1)

- SELECT DISTINCT item.ID, item.NAME, item.URI, item.SCREENSHOT,
item.DESCRIPTION, item.CREATED_AT FROM item, user_item WHERE
user_item.ID IN (1) ORDER BY item.CREATED_AT DESC LIMIT 10

Les deux premières requêtes sont exactes : elles ressortent bien les
bons résultats. La troisième n'est pas bonne : elle récupère tous les
items de la table. Je pense que le problème vient du "IN (1)" qui doit
être issu du plugin.

Avez-vous une idée ?

NB : J'ai également posté sur symfony-users (http://groups.google.com/
group/symfony-users/browse_thread/thread/b450095ec636040a)
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "Symfony-fr" 
de Google Groupes.
 Pour transmettre des messages à ce groupe, envoyez un e-mail à 
l'adresse symfony-fr@googlegroups.com
 Pour résilier votre abonnement à ce groupe, envoyez un e-mail à 
l'adresse [EMAIL PROTECTED]
 Pour afficher d'autres options, visitez ce groupe à l'adresse 
http://groups.google.com/group/symfony-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à