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