Bonjour à tous,
J’aimerais utiliser des urls simplifiées pour permettre à
l’utilisateur d’accèder à son compte à l’url suivante
site.com/username
J’ai donc ajouté une map.connect ‘:id’ dans routes.rb
J’aurais aimé savoir s’il y avait une possibilité afin que redirect_to
@user renvoie vers /nickname et pas vers /users/nickname (ou /users/
id)
Merci beaucoup par avance !
Pierre
Le 28 avr. 09 à 17:41, Pierre V. a écrit :
id)
Utilise les routes nommé
map.user_home ‘:id’
user_home_url(@user) => /12
il y a un test qui permet de faire ca :
it ‘should good route’
route_for(user_home_url(@user)).should == “/12”
end
car rien ne vaux un bon TMTBL
–
Cyril M.
Hé cool le test ! Mais c’est du Rspec ?! -_-
Tu m’aide sur le TMTBL, what is it ?
Merci Cyril donc pas moyen de faire que link_to @user renvoie /12
donc ?
Le 28 avr. 09 à 18:38, Zaphod B. a écrit :
Hé cool le test ! Mais c’est du Rspec ?! -_-
L’important est le test pas le framework de test.
Tu m’aide sur le TMTBL, what is it ?
Test More Than BryanL
J’avoue je suis un des rares à l’utiliser.
–
Cyril M.
Le 29 avr. 09 à 10:38, Pierre V. a écrit :
Merci Cyril donc pas moyen de faire que link_to @user renvoie /12
donc ?
Pas à ma connaissance. Mais attention, une route comme tu l’as mise
est dangereuse car potentiellement elle catch tout.
–
Cyril M.
On peut le faire en fait en “overwritant” la route.
Dans mon routes.rb
map.guide ‘:nickname’, :controller => ‘guides’, :action =>
‘show’, :requirements => { :nickname => /[A-Za-z0-9]{1,20}/ }
et du coup, quand je fais guide_path(@guide), ça passe tout seul.
Oui, c’est vrai
Je vais ajouter des :conditions pour essayer de ne pas tout capter
quand même…
Mais c’est tellement pratique de proposer des url simplifiées à ses
utilisateurs
Merci Cyril.