2010-05-07 2 views
2

저는 웹 개발 세계에 처음 왔습니다. 즉, 저는 javaScript/CSS를 처음 사용합니다. 이제 Python Django로 웹 시스템을 구축하고 있습니다. 장고 관리자에게 "탭"인터페이스를 추가하기위한 출발점으로 몇 가지 힌트를 주시겠습니까?Django 관리자에게 "tabbed"인터페이스를 추가하는 것에 대한 "시작점"힌트가 필요합니다.

예를 들어 마스터 테이블에 대한 세 가지 세부 테이블이 있으며 마스터 테이블에 대한 '편집'페이지에서 세 가지 세부 테이블을 편집하기 위해 세 가지 탭을 사용하고 싶습니다. 미리 감사드립니다.

답변

3

먼저 자바 스크립트로 해결할지 또는 템플릿을 재정 의하여 할지를 결정해야합니다. 이 두 가지 모두 요구 사항에 따라 좋은 솔루션입니다.

쉽게 방법은이 작업을 수행하기 위해, 그리고 첫 번째 방법은 당신이 그들을 숨기기/표시하는 탭 인터페이스를 만들 나중에 다른 fieldset의 모든 탭을 넣어하는 것입니다 테스트를 시작할 수 있습니다. 장점은 자바 스크립트로 DOM을 많이 변경하지 않고도 유연성이 부족하다는 단점입니다.

탭을 변경하면 사용자가 변경 한 내용을 잊어 버리고 저장하지 않고 떠날 수 있으므로 페이지를 떠나서 저장하지 않고 있다는 경고는 항상 좋은 생각입니다.

또 다른 접근법은 해당 특정 모델에 대한 change_form 템플리트를 대체하고 동일한 URL로 새로운 탭을 연결하지만 다른 GET 매개 변수로 링크하는 것입니다 (예 : .../mymodel /? active_tab = 2 템플릿 /보기에서 확인하고 적절한 내용을 렌더링하십시오. 이런 식으로하는 가장 유명한 프로는 사용자가 자바 스크립트를 사용할 필요가 없다는 것입니다.

django-cmsdoes it은 어떻게 확인할 수 있습니다. 그것은 다른 언어 사이에서 변화하는 아주 좋은 탭 인터페이스를 가지고 있습니다. 어떤 일을 시작하는 방법을 결정하는 가장 좋은 방법 중 하나는 다른 사람들이 어떻게했는지 확인하는 것입니다. 브라우저에서 소스 코드를 설치하고 실험을 시작하십시오!

희망이 도움이됩니다.

EDIT

다른 예시적인 접근법은 here이다. 완전한 django-cms 코드보다 첨부 된 패치를 통과하는 것이 더 쉽습니다. 건배.

+0

감사합니다. Rasca, html/JS에 대해 자세히 알아야 할 것 같습니다. –

관련 문제