Bonjour à tous,
Est ce que l'un de vous sais ce que signifie slug dans le tutorial de symfony et qu'elle est son utilité ?
Voici un example de commande :$this->setSlug(Jobeet::slugify($name));
MERCI ;
Cordialement,
Bonjour à tous,
Est ce que l'un de vous sais ce que signifie slug dans le tutorial de symfony et qu'elle est son utilité ?
Voici un example de commande :$this->setSlug(Jobeet::slugify($name));
MERCI ;
Cordialement,
Le slug est un behavior de Doctrine qui te permet de rendre un attrribut de ton modèle "propre" afin de pouvoir le passer dans une URL.
Doctrine le rends unique ce qui te permet de pouvoir t'en servir comme identifiant.
Pour ce qui est du Tuto et si tu utilise Doctrine, la fonction
est beaucoup plus propre.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Doctrine_inflector::urlize($string);
Tout à fait ça permet de "nétoyer" un string pour pouvoir le passer en arguement ou l'inclure dans une URL. il permet de passer de tous les caractéres non ASCII à "_" et de tout caractére majuscule en miniscule. Voici un example :
Sensio Labs ça donne sensio-labs
Paris, France ça donne paris-france
Voila, merci pour ta réponse Muspil
Cordialement,
Voici le code pour tester si ça marche:
et puis faire la commande (pour un projet nomé Jobeet)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 // test/unit/JobeetTest.php require_once dirname(__FILE__).'/../bootstrap/unit.php'; $t = new lime_test(6, new lime_output_color()); $t->is(Jobeet::slugify('Sensio'), 'sensio'); $t->is(Jobeet::slugify('sensio labs'), 'sensio-labs'); $t->is(Jobeet::slugify('sensio labs'), 'sensio-labs'); $t->is(Jobeet::slugify('paris,france'), 'paris-france'); $t->is(Jobeet::slugify(' sensio'), 'sensio'); $t->is(Jobeet::slugify('sensio '), 'sensio');
Code : Sélectionner tout - Visualiser dans une fenêtre à part $ php symfony test:unit Jobeet
Utiliser la méthode urlize($string) et plus propre que d'utiliser un slug donc ?
Il faudrait voir si cela est encore possible sous symfony 1.4 (puisque tu sembles utiliser cette version par rapport à tes messages). Etant donné qu'il y a quelques différences (constatées parce que je suivais le tuto jobeet en français de la version 1.2 - version papier - pour un framework 1.4), il vaut mieux se renseigner.
Oui, je n'ai pas fait attention à la date des posts ^^'
Je pense que slug/slugify proposé par le tutoriel doit être plus performant sinon il l'aurait dit je pense...
A noter que doctine 1.2 a un beahvior qui permet de créer automatiquement un slug, unique pour la table et composé d'un ou plusieurs champs. Celui-ci peut facilement être utilisé dans les routes de symfony.
Partager