2012-09-28 10 views
5

タグ{% url path.to.view %}はURLのパスのみを返すことができます。どのようにしてドメイン名で完全なURLを取得できますか?Djangoテンプレート内で完全なURL(ドメインを含む)を取得することは可能ですか

実際には、私がしたいことは、別の私のサイトのビューを指すリンクを追加しています。しかし、{% url path.to.view %}は私のビューのパスしか取得できません。結果として、リンクは私が望むものを指し示すことができません。

私の解決策は、最初にドメインを取得し、Contextによってテンプレートに渡すためにHttpRequest.get_host()を使用しています。次に、テンプレート(htmlファイル)で、完全なURLアドレスにスプライスします。このように:<a href="http://{{ domain }}{% url path.to.view %}?param={{param}}">Foo</a>

要するに、私はちょうどドメインを取得したいです。私の不明な記述に申し訳ありません! @ハンスの答えは素晴らしいです、ありがとう!

使用要求オブジェクトのメソッドbuild_absolute_uri():ドキュメントhereにあります

+0

ようこそスタックオーバーフロー! [あなたの質問を研究する](http://stackoverflow.com/questions/how-to-ask)をお勧めします。 [既に何かを試したことがある場合は(http://whathaveyoutried.com/)、質問に追加してください。そうでない場合は、最初に質問を研究して試してみてください。 –

答えて

12

関連する問題