J'essaie de créer des ancres uniques pour chaque commentaire sur mon blog afin qu'une personne puisse prendre l'URL d'une ancre et la coller dans son navigateur, qui chargera automatiquement la page et défilera jusqu'au point de la page où commence le commentaire.Comment créer une ancre et rediriger vers cette ancre spécifique dans Ruby on Rails
Peut-être que je vais à ce sujet dans le mauvais sens, mais j'ai essayé cela qui n'a eu aucun succès.
Commentaire vue - Fail 1 - lorsqu'il est collé dans un navigateur ce lien ne défile pas vers le bas à la position désirée contrôleur
<%= link_to '#', :controller => 'posts', :action => 'show', :id => comment.post, :anchor => 'comment_' << comment.id.to_s %>
Commentaires - Fail 2 - Rectifier url dans le navigateur, mais pas de défilement arrive, il reste juste à haut de la page
redirect_to :controller => 'posts', :action => 'show', :id => @post, :anchor => 'comment_' + @comment.id.to_s
Si quelqu'un pouvait aider, je serais très reconnaissant :)
MISE à JOUR: les solutions ci-dessous presque le travail, mais je sors avec l'URL suivante qui n'est pas défilée si je clique dessus.
# dire http://localhost:3000/posts/please-work
Pour faire défiler l'écran l'URL doit spécifier où vous le souhaitez pour faire défiler. Pour ce faire, vous devez avoir un # commentaire_123 à la fin de votre URL. Où le texte après le '#' doit correspondre à la valeur d'un attribut 'name' dans une balise d'ancrage. L'URL de votre mise à jour ne défilera pas faute de #. – vrish88
Ouais j'ai essayé ça - ça n'a pas marché! Transforme le: ancre crée cette URL # Mais en utilisant: nom à ce qui comme vous le dites est ce qui change je suis après. Une idée de pourquoi c'est le cas? # – Damian
Oh, d'accord, je vois. Désolé pour la confusion. J'ai mis à jour ma réponse mais il semble que vous deviez concaténer manuellement l'ancre à la fin de l'url. Sinon, la balise link_to pense que: anchor est un attribut html. J'espère que cela fonctionne :) – vrish88