Je suis nouveau sur ruby on rails et j'ai joué avec du code source libre pour apprendre.Comment fonctionne la méthode model_path()
J'ai quelques problèmes à comprendre ce que retourne la méthode model_path(@model)
et comment la changer. Plus précisément, j'ai un modèle avec un id
et un slug
et pour une raison quelconque model_path(@model)
retourne toujours le chemin avec le slug
et non le id
.
Des idées sur pourquoi cela peut-être et comment je peux changer ce comportement?
Merci! Le code a plus de sens maintenant. Y at-il un moyen facile de générer un http://domain.com/:id/:slug – slugger
ajouter un itinéraire personnalisé. match '/: id /: slug',: to => "votre_controller # show",: as =>: custom_model. Vous pouvez ensuite l'utiliser dans vos vues custom_model_path (@ model.id, @ model.slug). Mais je ne trouve pas cela une bonne solution, il vaut mieux que la méthode to_param retourne l'identifiant et un slug pour que l'url soit comme ceci "/ model/12-blabla" – egze
J'aime aussi le 12-blablah, mais ensuite isn ' t-il plus difficile pour le contrôleur d'utiliser params [: id]? Il aurait besoin d'analyser soit le slug ou l'id, afin de trouver l'instance du modèle, non? – slugger