문제

django 템플릿에는 컨텍스트에 변수가 있습니까 (예 : {{ BASE\_URL }}, {{ ROOT\_URL }}, 또는 {{ MEDIA\_URL }} 그것은 하나에 링크하는 데 사용할 수 있습니다 home 프로젝트의 URL?

즉, Django가 프로젝트의 루트에서 실행중인 경우 변수 (r이라고 부르자) {{ R }} 템플릿에있을 것입니다 /. 루트 URL이 서브 폴더 인 경우 http://host/X/ 변수 {{ R }} 할 것입니다 /X/ (또는 http://host/X/).

고통스럽게 간단 해 보이지만 답을 찾을 수 없습니다. :) 고맙습니다!

도움이 되었습니까?

해결책

홈페이지를 처리하는 데 사용하는 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 책 의이 노트에는 응용 프로그램을 하위 디렉토리에 배포하는 데 대한 몇 가지 팁이 있습니다.

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

다른 팁

나는 항상 같은 것을 사용합니다 <a href="/"> (물론 집이 뿌리에 있다고 가정합니다). 나는 이것을 한 번 찾는 것을 기억하는 것 같고,이 경로에 대한 django 변수를 찾을 수 없었습니다. 여하튼, / 어쨌든 꽤 쉬운 것처럼 보였습니다.

관리자에서 "사이트"로 이동하여 도메인을 설정하십시오.

통과하다 context_instance=RequestContext(request) 문제의 템플릿에.

이제 사용하십시오 {{ SITE_URL }} 그 템플릿 중 하나와 당신은 황금빛입니다.

Django 책 10 장 해당 컨텍스트 프로세서 비트를 회복 해야하는 것보다 더 많은 정보가 있습니다.

(r'^$', 'django.views.generic.simple.redirect_to', {'url': '/home/'}),

잘 작동합니다 :)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top