메뉴 커스터마이징

Codren·2021년 5월 27일
0

Django Admin

목록 보기
11/13

Section 1. 메뉴 커스터마이징

1. django-baton MENU




2. django-baton MENU 설정

  • MENU type : title / app / model / free
  • type app -> name 에 app name 지정 (기본 페이지는 change_list)
  • type free -> children 속성으로 하위 메뉴 추가 가능 / url 지정

{ 'type': 'title', 'label': 'main'},		# 맨 처음 타이틀에 'apps' 속성 생략 가능 ('models' 속성 또한 생략 가능)




3. django-baton MENU 결과 화면

  • 해당 메뉴 진입 시 짙은 색으로 Highlight



error


1. 하위 메뉴 진입 시 상위 메뉴까지 Highlight 되는 error

  • 다음과 같이 free 의 자식으로 model 타입과 free 타입을 지정했을 경우, 최근 주문 메뉴 이동 시 중복되어 하이라이트 기능이 실행되는 error


  • 원인
    - free type 일 때는 location.pathname (현재 페이지의 url) 과 지정된 url 이 정확히 일치할 때만 하이라이트 기능이 실행됨
    - model type 일 때는 location.pathname 에 지정된 url 있는지 정규표현식으로 비교하고, 있으면 하이라이트 기능이 실행됨
    - 주문 메뉴의 url 은 /admin/order/order 이고, 최근 주문 메뉴의 url 은 /admin/order/order/date_view 이므로 위에는 완전 일치 아래는 정규표현식 일치 -> 하이라이트


  • 해결방법
    - 둘 다 free type 으로 지정하기
    - 정규표현식 're': '^/admin/order/order/date_view/(\d*)?'} 을 이용해서 하이라이트 기능 제어 가능

0개의 댓글