23

Djangoテンプレートでは、コンテキストに変数がありますか(たとえば、、、{{ BASE\_URL }}または{{ ROOT\_URL }}プロジェクトのURL{{ MEDIA\_URL }}にリンクするために使用できる変数はありますか?home

つまり、Djangoがプロジェクトのルートで実行されている場合{{ R }}、テンプレートの変数(Rと呼びましょう)はになります/。ルートURLがサブフォルダーhttp://host/X/の場合、変数{{ R }}/X/(またはhttp://host/X/)になります。

痛々しいほど単純に思えますが、答えが見つかりません。:) ありがとうございました!

4

4 に答える 4

45

ホームページの処理に使用しているURL構成に名前を付けて、次のように使用できます。

urls.py:

from django.conf.urls.defaults import *

urlpatterns = patterns('myproject.views',
    url(r'^$', 'index', name='index'),
)

テンプレート:

<a href="{% url index %}">...

更新:新しいバージョンのDjangoでは、ビューの名前を引用符で囲む必要があります。

<a href="{% url 'index' %}">...

Django Bookのこのメモには、アプリケーションをサブディレクトリにデプロイするためのヒントがいくつかあります。

http://www.djangobook.com/en/1.0/chapter20/#cn43

于 2008-10-22T16:19:44.567 に答える
13

私はいつも次のようなものを使用<a href="/">します(もちろん、あなたの家がルートにあると仮定します)。これを一度調べたのを覚えているようですが、このパスのDjango変数が見つかりませんでした。とにかく、とにかく、/かなり簡単に見えました。

于 2008-10-22T16:17:46.040 に答える
4

管理画面で「サイト」に移動し、ドメインを設定します。

context_instance=RequestContext(request)問題のテンプレートに渡します。

{{ SITE_URL }}これらのテンプレートのいずれかで使用すると、ゴールデンです。

Django Book の第 10 章には、そのコンテキスト プロセッサ ビットに関して必要な情報よりも多くの情報があります。

于 2008-10-22T17:33:42.937 に答える
2
(r'^$', 'django.views.generic.simple.redirect_to', {'url': '/home/'}),

正常に動作します :)

于 2010-07-30T18:56:56.313 に答える