Server-side pagination에서 page key에 block.id 지정값 가져오기

서버사이드 페이지네이션(server-side pagination)에서는
기본적으로 page key를 block 순서에서 가져옵니다. (0,1,2…)

해당 키가 모달 등에서 겹칠 가능성이 있어 더 정확하게 block.id에서 가져올 수 있는 방법을 지원합니다. (미지정시에는 그대로 0,1,2… 순서로 유지)

pages:
- path: bnXl_E
  blocks:
  - type: query
    resource: mysql.qa
    id: List
    sql: >
      SELECT * 
      FROM wine_stock 
      LIMIT :page_offset, :page_limit
    sqlTotal: >
      SELECT COUNT(id) FROM wine_stock
    sqlType: select
    mode: remote
    paginationOptions:
      enabled: true
      perPage: 3
    columns:
      name:
        openModal: view
    modals: 
      - path: view
        # column: id
        blocks:
          - type: query
            resource: mysql.qa
            id: View
            sql: > 
              SELECT * FROM wine_stock 
              WHERE vintage = :vintage
              LIMIT :page_offset, :page_limit
            sqlTotal: >
              SELECT COUNT(id) FROM wine_stock
              WHERE vintage = :vintage
            sqlType: select
            mode: remote
            paginationOptions:
              enabled: true
              perPage: 3
            params:
              - key: vintage
                valueFromRow: true

위 YAML의 경우 주소가 아래와 같이 생성됩니다.

/bnXl_E?pageList=3&limitList=3&pageView=2&limitView=3

왜 pagination시 URL query parameter를 변경하나요?

링크를 공유하거나, 새로고침, 뒤로가기, 앞으로가기해도 해당 화면이 유지됩니다.

추후 keep: false 를 통해 해당 옵션을 끌 수 있도록 지원 예정입니다.