Si on veut avoir plus de contrôle sur le permalink, on peut avoir un
champ dédié dans le modèle, initialisé à la création et utilisé dans
le to_param :
before_create do |post|
post.permalink = post.title.parameterize
end
def to_param
"#{id}-#{permalink}"
end
--
Emilien
http://emilientaque.fr
2010/1/17 Fabien Jakimowicz <[email protected]>:
> 2010/1/17 Emilien Taque <[email protected]>:
>> Avec la solution d'Alexis, l'unicité du permalink n'est pas
>> indispensable, vu que l'identifiant est toujours présent :
>> /posts/12-my-post-title
>>
>> Ceci fonctionne car "12-my-post-title".to_i == 12
>>
>> Ce qui semble important niveau SEO, c'est de rediriger si le permalink
>> n'est pas le bon (par exemple si le titre du post a été modifié). Il
>> faut alors faire :
>>
>> redirect_to @post, :status => 301 if @post.to_param != params[:id]
>>
>
> Cela dépend : si le titre contient une toute nouvelle chose blindée
> d'insultes en tout genre et que ce lien est posté un peu partout sur
> des forums, cela crée une très mauvaise image. Je préfère afficher un
> 404 dans ce cas là et rediriger vers la page avec le title dans l'url
> si il à été omis.
>
> --
> http://fabien.jakimowicz.com
>
> --
> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
> Google Groups.
> Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
> [email protected]
> Pour résilier votre abonnement envoyez un e-mail à l'adresse
> [email protected]
>
--
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse
[email protected]