Il y a des moments où on doit faire les choses un peu moins proprement que d'habitude. C'est mal, oui, mais c'est parfois nécessaire et le tout est de bien savoir ce que l'on fait et de sauvegarder sa base de données avant de l'altérer définitivement.
Vous aurez peut-être remarqué qu'il n'est pas aisé de réorganiser les commentaires postés sur Drupal 7. D'ailleurs, pourquoi donc vouloir les "réorganiser" ? Tout simplement parce-que parfois, les visiteurs veulent répondre à un commentaire et en postent en fait un "nouveau" qui n'aura pas d'indentation de "réponse", ce qui fera perdre en lisibilité, voire en pertinence du commentaire. Par exemple :

Voici ce que ça donne en base de données :
mysql> SELECT cid,pid,subject,status,thread FROM comment WHERE status = 1 AND cid > 35216 ORDER BY cid DESC; +-------+-------+-------------------------------+--------+--------+ | cid | pid | subject | status | thread | +-------+-------+-------------------------------+--------+--------+ | 35251 | 0 | Tabledrag classique | 1 | 02/ | | 35241 | 0 | Bonjour, | 1 | 01/ | | 35216 | 0 | CSS menu Superfish | 1 | 06/ | +-------+-------+-------------------------------+--------+--------+ 4 rows in set (0.00 sec)
Ici, le commentaire avec le cid 35251 est en fait une réponse au cid 35241. Regardons un peu le schéma de base de données pour y voir plus clair :
mysql> SELECT cid,pid,subject,status,thread FROM comment WHERE status = 1 AND cid > 35191 ORDER BY cid DESC; +-------+-------+-------------------------------+--------+--------+ | cid | pid | subject | status | thread | +-------+-------+-------------------------------+--------+--------+ | 35251 | 35241 | Tabledrag classique | 1 | 01.00/ | | 35241 | 0 | Bonjour, | 1 | 01/ | | 35216 | 0 | CSS menu Superfish | 1 | 06/ | +-------+-------+-------------------------------+--------+--------+ 4 rows in set (0.00 sec)
Ce qui nous donne le résultat final escompté :

Et voilà !
Commentaires
darkjeff (non vérifié)
lun, 26/11/2012 - 17:11
Permalien
J'aurais envie de répondre à
J'aurais envie de répondre à ce super post :
"Bien reçu"
Plus sérieusement, c'est une très bonne astuce que tu nous donnes là.
Ajouter un commentaire