Bonjour

Dans mon application j'ai des posts auquels j'attribue des slugs uniques en fonction du titre, jusque là très bien, mais si j'entre un nouveau post avec le même titre l'erreur comme quoi il est déjà présent dans la base de donnée apparait, toujours bon donc.

Ma question est la suivante, comment faire une condition de validation du slug avec comme, condition, si il n'existe pas, alors on l'enregistre, mais si il existe déjà, alors on change dynamiquement le nouveau avec des parametres définies, rajouter un suffix par exemple ?

Via un mutateur ? Ou autre ?

Pour infos :

Ma migration à comme configuration unique pour la colonne slug et je ne l'ai pas mis unique dans le rules du request associé au post.

Merci d'avance.

5 réponses


Boris
Auteur

Merci :).

Après, le slug n'est qu'un exemple comme un autre, ce qui m'intéresse le plus c'est surout comment faire cela directement sans passer par un tier. Car si j'ai d'autre validation du même genre ou plus complexe, je ne serais pas plus avancé.

avec la fonction firstOrNew(array()) d'eloquent ?

En effet Boris je comprend que tu pourrais en avoir besoin pour autre chose.
Le code source du package est très bien documenté, tu pourrais y jeter un oeil pour voir comment il a été fait !

Salut, je ne savais pas que ce problème existait, sur sf2 tout est géré automatiquement :-)
Pourquoi pas en créant ta propre contrainte de validation? ;-)