장고 모바일은 모바일 브라우저를 감지하는 간단한 방법을 제공하고 사용자에게 귀하의 사이트의 모바일 버전을 제공하기 위해 몇 가지 다른 템플릿을 렌더링하기 위해 당신의 손에 당신에게 도구를 제공 장고 응용 프로그램입니다.
아이디어는 똑같은하여 뷰를 유지하지만 투명 응답을 렌더링하는 데 사용되는 템플릿을 교환하는 것이다. 이 작업은 두 단계로 수행됩니다
1. 미들웨어는 귀하의 사이트를 볼 수있는 클라이언트의 설정을 결정합니다. 예를 들면 그는 이동 맛이나 풍미 전체 데스크탑을 사용하고자하는 경우.
2. 템플릿 로더는 미들웨어에서 검출 맛에 기초하여 올바른 템플릿을 선택하는 후 처리한다.
설치
사전 요구 사항 : django_mobile 장고의 세션 프레임 워크에 따라 달라집니다. 당신이 django_mobile 사용하는 세션 프레임 워크가 사용 가능하고 작동하는지 확인하기 전에 그래서.
1. 예를 들어 좋아하는 파이썬 도구로 django_mobile 설치 easy_install을 django_mobile 또는 django_mobile를 설치 PIP.
2. settings.py에 설정하여 INSTALLED_APPS에 django_mobile를 추가합니다.
3. MIDDLEWARE_CLASSES 설정으로 django_mobile.middleware.MobileDetectionMiddleware를 추가합니다.
4. MIDDLEWARE_CLASSES 설정으로 django_mobile.middleware.SetFlavourMiddleware를 추가합니다. 이 MobileDetectionMiddleware 후도 SessionMiddleware 다음에 나열하는지 확인하기.
5. settings.py에서 TEMPLATE_LOADERS 목록에 첫 번째 항목으로 django_mobile.loader.Loader를 추가합니다.
6. TEMPLATE_CONTEXT_PROCESSORS 설정으로 django_mobile.context_processors.flavour를 추가합니다.
지금 당신은 영광 장고 모바일을 사용할 수 있어야합니다. 사물이 작동하고있는 설정이 장고 모바일의 동작을 수정하기 불통 될 수있는 방법은 아래 설명을 참조하시기 바랍니다.
용법
장고 모바일의 개념은 귀하의 사이트에 대한 다른 맛의 아이디어를 중심으로 구축이다. 예를 들어 모바일 버전은 하나의 가능한 맛 등의 다른 데스크톱 버전으로 설명한다.
이로써, 단지 전체 데스크탑 경험 한 모바일 버전을 구별하지 않고 여러 가지 설계를 제공 할 수있다. 여러 모바일 맛을 사용할 수 예를 만들 수 있습니다 모바일 아이폰과 안드로이드에 사파리뿐만 아니라 오페라 하나는 아이 패드와 같은 인터넷 정제를위한 별도의 하나 하나.
참고 : 장고 모바일 기본은 전체 및 모바일 맛을 구분하여.
올바른 맛이 어떻게 든 미들웨어가 선택한 후에는 request.flavour 속성에 할당합니다. 당신은 별도의 로직을 제공하기 위해 뷰에서이를 사용할 수 있습니다.
이 맛은 투명이 특별한 맛에 대한 사용자 정의 템플릿을 선택하는 데 사용됩니다. 선택한 템플릿이 실제로 렌더링 할 템플릿 이름에 접두어로 현재의 맛을해야합니다. 에는 render_to_response ( 'index.html을', ...) 모바일 맛 실제로 모바일 / index.html을 템플릿으로 렌더링 된 응답을 반환합니다 활동적인 호출 될 때 의미한다. 이 맛 템플릿을 사용할 수없는 경우는 정상적으로 기본 index.html을 템플릿에 폴백합니다.
어떤 경우에는 해당되지 원하는 방법은 각 맛에 대해 완전히 분리 된 템플릿을해야합니다. 또한 단 하나의 템플릿의 작은 부분을 변경하려면 {{맛}} 템플릿 변수를 사용할 수 있습니다. 짧은 예 :
<헤드>
& NBSP; <제목> 내 사이트 {%의 경우 맛 == "모바일"%} (모바일 버전) {%의 ENDIF의 %} 제목>
& NBSP; ...