2

次のFacebookコードを使用して、Postオブジェクトのリストを反復処理するときにLikeプラグインを表示しています。

<fb:like href="{% url post post.id %}" layout="button_count" show_faces="false" width="450" font=""></fb:like>

結果のHTMLは次のようになります。

 <fb:like href="/9/" layout="button_count" show_faces="false" width="450" font=""></fb:like> 

www.facebook.com/9/ただし、[いいね]ボタンをクリックすると、自分のドメイン名ではなく、FBプロファイルに「いいね」と表示されます。

私は何を間違えましたか?

ありがとうございました!

4

1 に答える 1

5

問題は{% url post post.id %}、ドメインなしで絶対URLパスを返すことです。Facebookプラグインには、ホストを含​​む完全なURLが必要です。ページを好感を持たせるには、ドメインを何らかの方法でテンプレートに渡す必要もあります。hostビューでを介してテンプレート変数を作成request.get_host()し、それをテンプレートに渡すと、urlステートメントは次のようになります。

<fb:like href="http://{{host}}{% url post post.id %}" layout="button_count" show_faces="false" width="450" font=""></fb:like>
于 2011-04-19T01:17:06.157 に答える