pixabay
https://steempeak.com/hive-101145/@june0620/python-12-django-5-template-tags-filters 이 글에서도 언급했던 7일 전 포스팅 보상이 0으로 노출되는 문제를 해결해 본다.
pending_payout_value 값을 썼는데 7일전 포스팅은 이미 보상이 완료됐기때문에 해당 키값이 0으로 되면서 발생한 문제였다.
get_blog 함수 리스폰스 값을 확인 결과 7일전 보상은 total_payout_value 를 쓰면 될 것 같다.
pending_payout_value값이 있으면 사용, 0이면 total_payout_value 값 사용
을 django의 templatetags.py 에 filter로 등록하면 될 것 같다.
@register.filter
def get_payout_value(post_data: dict):
value = post_data['pending_payout_value']
if value.startswith("0.000"):
value = post_data['total_payout_value']
return value
html 파일도 이 filter를 사용하여 조금 수정해 줘야 한다.
...
<small class="text-muted">보상 {{ post.comment | get_payout_value }} </small>
...
[Cookie 😅]
Python 3.7.4
Django 2.2.4
steem-python 1.0.1
goorm IDE 1.3
참고 글:
https://wayhome25.github.io/django/2017/06/22/custom-template-filter/