54. 서브메뉴 만들기 - 이전/다음 기능
54.1. django get_previous_by_필드명() - model.py
get_previous_by_필드명()으로 사용할 수 있습니다.
위 그림은 regist_dt를 기준으로
이전 글 제목(self.title)과 이후 글을 제목을
가져오는 기능을 합니다.
수정일 기준으로 할려면 get_previous_by_update_dt()로 만드시면 됩니다.
54.2. 페이지 정보담기 - view.py
54.3. 서브메뉴/이전/다음글 적용 - blogDetail.html
view에서 context에서 pageInfo를 담아놓았습니다.
pageInfo로 model에 정의한 get_next, get_previous로 타이틀을 표시하고
get_absolute_url로 a 태그의 링크를 추가했습니다.
이제 확인해보겠습니다.
<div class="col-lg-4 mb-4">
<div id="right_menu" class="col-xl-3 col-md-6 mb-4">
<div class="card border-left-info shadow h-100 py-2">
<div class="card-body">
<!--<div class="h5 mb-0 font-weight-bold text-gray-800 text-center">{{title_nm}}</div> -->
<div class="row no-gutters align-items-center">
<div class="col">
{% if pageInfo.get_previous %}
<div>
<span class="h6 mb-1 font-weight-bold text-gray-800">
<a href="{{pageInfo.get_previous.get_absolute_url}}">{{pageInfo.get_previous}}</a>
</span>
</div>
{% endif %}
<hr class="d-none d-md-block">
<div> <span class="h6 mb-1 font-weight-bold text-gray-800"><a href="#{{title_nm}}">{{title_nm}}</a></span></div>
{% for list in dataList %}
<div>
<span class="h6 mb-1 font-weight-bold text-gray-800">
<a href="#{{list.pb_detail__sub_title}}">{{list.pb_detail__sub_title}}</a>
</span>
</div>
{% endfor %}
<hr class="d-none d-md-block">
{% if pageInfo.get_next %}
<div>
<span class="h6 mb-1 font-weight-bold text-gray-800">
<a href="{{pageInfo.get_next.get_absolute_url}}">{{pageInfo.get_next}}</a>
</span>
</div>
{% endif %}
</div><!--<div class="col mr-2">-->
</div>
</div>
</div>
</div>
</div>
{% endblock %}
54.4. 브라우저에서 서브메뉴/이전/다음글 확인하기
현재글 : 54. 서브메뉴 만들기 - 이전/다음 기능
Comments
Login: