Rails 3.1.3 Verwendung von anchor-Attribut mit link_to tag von posts/index Beiträge/show/id funktioniert nicht
Ich bin mit einem link_to tag auf meine Beiträge/index-view und möchten einen link auf meine Beiträge/show/id anzeigen mit einem Anker, der lässt Sie nach unten scrollen, um die Kommentare bilden. Aus irgendeinem Grund kann ich nicht bekommen, den Anker zu arbeiten. Hier ist mein code:
In posts/index
<%= link_to 'Add a Comment', post, :anchor => 'comment_form' %>
Dies nicht gelingt, fügen Sie die # - Zeichen, um das Ende der Verknüpfung, so ist es eben localhost:3000/posts/id.
Ich habe auch versucht, viele Variationen für link_to, einschließlich:
<%= link_to 'Add a Comment', post(:anchor => 'comment_form' %>
und
<%= link_to 'Add a Comment', :controller => 'posts', :action => 'show', :id => @post, :anchor => 'comment_form' %>
aber ich hatte kein Glück.
Hier ist meine Beiträge#show-action:
def show
@post = Post.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @post }
end
end
ist hier und die Beiträge/show view wo soll ich Anker scrollen zu:
<h2><a name="comment_form" id="comment_form">Add a comment:</a></h2>
Darüber hinaus ist jede der oben genannten arbeiten, wenn ich die Verknüpfung, um etwas über die index-Seite, wie ich sehen kann das hash # angehängt wurde, um die url ausgegeben. Aus irgendeinem Grund es nicht funktioniert, beim Versuch den link zu der Seite show. Alle helfen mit diesem?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie dies:
Das zweite argument
link_to
ist in der Regel übergeben, umurl_for
, und das Dritte argument wird verwendet als ein Attribute-hash für die<a>
element, dass letztendlich generiert wird.Also in deinem ersten Beispiel, du bist die übergabe eines
Post
Objekt als zweites argument und ein hash-Wert als drittes argument. Nur diePost
übergeben werden würde, zuurl_for
. Es sieht nie das hash mit den:anchor
option, so dass Sie nicht sehen, den Anker am Ende der generierten URL. (Aber Sie würden wahrscheinlich sehen, einanchor="comment_form"
Attribut an die generierten<a>
element.)Dein zweites Beispiel ist syntaktisch falsch. Ich kann mir vorstellen, dass ein Fehler aufgetreten ist.
Ihre Dritte Beispiel...sollte gearbeitet habe. Ich bin mir nicht sicher, warum es nicht 🙂