1

現在の URL パスを Facebook コメント div の href に追加するために考えられるすべてのバリエーションを試しました。なぜこれが機能しないのですか?

<div class="fb-comments" data-href="<%= #{request.protocol}#{request.host_with_port}#{request.fullpath} %>" data-width="470" data-num-posts="2"></div>

私もこれを試しましたが、ルビーインジェクションコードの最後はこのようにdivを終了しているようです:

<div class="fb-comments" data-href=<%= "#{request.protocol}#{request.host_with_port}#{request.fullpath}" %> data-width="470" data-num-posts="2"></div>
4

2 に答える 2

2

誰かがそれを必要とする場合に備えて別の方法で投稿すると、最初の試行で近くにあり、すでに <%= %> 内にあるため #{} は必要ありません

これは私のために働いた:

<div class="fb-comments" data-href="<%= request.protocol + request.host_with_port + request.fullpath %>" data-width="470" data-num-posts="10"></div>

ただし、このメソッドを使用して取得する小さな問題に直面しました。これcurrent_urlは、URL のパラメーターがコメントの添付場所に影響するためです。

たとえば、私が望んでいたものではないものとはhttp://localhost:3000/users/1?locale=en異なるコメントを保存します!!http://localhsot:3000/users/1?locale=ar

だから、request.path代わりに使用するとこれがfull_path解決することがわかりました:

<div class="fb-comments" data-href="<%= request.protocol + request.host_with_port + request.path %>" data-width="470" data-num-posts="10"></div>
于 2013-06-20T15:21:48.307 に答える
1

元の Facebook コメント div を変換する content_tag を使用する必要がありました。

<div class="fb-comments" data-href="http://example.com" data-width="470" data-num-posts="2"></div>

これに:

<%= content_tag(:div, nil, :class => 'fb-comments', "data-href" => "#{request.protocol}#{request.host_with_port}#{request.fullpath}", "data-width" => '470', "data-num-posts" => "2"  ) %>
于 2012-12-21T20:12:10.193 に答える