Multi-Page Apps and URL Support

Published by onesixx on

Multi-Page Apps and URL Support

https://github.com/AnnMarieW/dash-multi-page-app-demos

/dash-bootstrap-components: example (collapsible-sidebar-with-icons)

Dash는 single-page app으로 web applications을 랜더링한다.

dcc.Link를 사용할때는 Application이 완전히 reload되지 않는다.
따라서, navigating할때,이것은 브라우징을 매우 빠르게 만듭니다.

Dash에서 multi-page apps을 구축하기 위해서는
URL 라우팅에 필요한 callback 로직를 추상화하고,
Callback과 함께 dcc.Location 및 dcc.Link와 같은 구성 요소를 사용하여, Datash Page를 쉽게 만들수 있다.

여기서 만약 Dash page를 사용하지 않고 다중 페이지 앱을 구축하려는 경우 다른 옵션을 사용할 수 있습니다.

Dash Pages

Dash 2.5 버전부터, Dash Pages는 multi-page app을 쉽게 만들수 있도록
URL 라우팅 처리를 담당하고,
앱 내 페이지를 구조화하고 정의하는 간단한 방법을 제공한다.

Shell
Shell

Multi-page App을 생성하는 기본 단계

  1. /pages 디렉토리에 각 페이지를 위한 개별 .py 파일을 만듭니다.
  2. 각 페이지 파일에서:
  • dash.register_page(name)을 추가 ==> 이것이 앱의 페이지임을 Dash에게 알립니다.
  • 레이아웃 또는 레이아웃을 반환하는 함수인 layout 내에서 페이지 내용을 정의합니다.
  1. 메인 앱 파일인 app.py에서:
  • 앱을 선언할 때 use_pages를 True로 설정합니다: app = Dash(name, use_pages=True)
  • 사용자가 앱의 페이지 경로 중 하나를 방문할 때 페이지 내용이 표시되는 위치에 dash.page_container를 추가합니다.

Query Strings , Variable Paths(path_template)

get함수나 path를 통해 변수의 값을 전달.

multi_page_cache_background_callback

Python
Categories: dash

onesixx

Blog Owner

Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x