Ecoer Logo
VOTING POWER0.00%
DOWNVOTE POWER0.00%
RESOURCE CREDITS100.00%
REPUTATION PROGRESS0.00%
Net Worth
0.000USD
STEEM
0.000STEEM
SBD
0.001SBD
Own SP
0.000SP

Detailed Balance

STEEM
balance
0.000STEEM
market_balance
0.000STEEM
savings_balance
0.000STEEM
reward_steem_balance
0.000STEEM
STEEM POWER
Own SP
0.000SP
Delegated Out
0.000SP
Delegation In
0.000SP
Effective Power
0.000SP
Reward SP (pending)
0.000SP
SBD
sbd_balance
0.001SBD
sbd_conversions
0.000SBD
sbd_market_balance
0.000SBD
savings_sbd_balance
0.000SBD
reward_sbd_balance
0.000SBD
{
  "balance": "0.000 STEEM",
  "savings_balance": "0.000 STEEM",
  "reward_steem_balance": "0.000 STEEM",
  "vesting_shares": "0.000000 VESTS",
  "delegated_vesting_shares": "0.000000 VESTS",
  "received_vesting_shares": "0.000000 VESTS",
  "sbd_balance": "0.001 SBD",
  "savings_sbd_balance": "0.000 SBD",
  "reward_sbd_balance": "0.000 SBD",
  "conversions": []
}

Account Info

namekylejo
id1173231
rank1,899,689
reputation13634656
created2018-11-18T01:08:27
recovery_accountovnd-tx-3
proxyNone
post_count1
comment_count0
lifetime_vote_count0
witnesses_voted_for0
last_post2018-11-18T05:13:27
last_root_post2018-11-18T05:13:27
last_vote_time1970-01-01T00:00:00
proxied_vsf_votes0, 0, 0, 0
can_vote1
voting_power0
delayed_votes0
balance0.000 STEEM
savings_balance0.000 STEEM
sbd_balance0.001 SBD
savings_sbd_balance0.000 SBD
vesting_shares0.000000 VESTS
delegated_vesting_shares0.000000 VESTS
received_vesting_shares0.000000 VESTS
reward_vesting_balance0.000000 VESTS
vesting_balance0.000 STEEM
vesting_withdraw_rate0.000000 VESTS
next_vesting_withdrawal1969-12-31T23:59:59
withdrawn0
to_withdraw0
withdraw_routes0
savings_withdraw_requests0
last_account_recovery1970-01-01T00:00:00
reset_accountnull
last_owner_update2018-11-18T01:12:42
last_account_update2018-11-26T11:38:21
minedNo
sbd_seconds0
sbd_last_interest_payment1970-01-01T00:00:00
savings_sbd_last_interest_payment1970-01-01T00:00:00
{
  "active": {
    "account_auths": [],
    "key_auths": [
      [
        "STM6ZhNbtA9WsbAYMdPBDYMqAT2iJ4dCuyEgC3SUueJkMVSMXsMAE",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "balance": "0.000 STEEM",
  "can_vote": true,
  "comment_count": 0,
  "created": "2018-11-18T01:08:27",
  "curation_rewards": 0,
  "delegated_vesting_shares": "0.000000 VESTS",
  "downvote_manabar": {
    "current_mana": 0,
    "last_update_time": 1542503307
  },
  "guest_bloggers": [],
  "id": 1173231,
  "json_metadata": "{\"profile\":{\"profile_image\":\"https://cdn.steemitimages.com/DQmb6PQJdeALortkihiiVbj9irtoPeCWAKJtYgE3Fn3cRCo/jo.png\",\"name\":\"Kyle.Jo\",\"location\":\"Korea, Seoul\",\"website\":\"https://jo-s.tistory.com\"}}",
  "last_account_recovery": "1970-01-01T00:00:00",
  "last_account_update": "2018-11-26T11:38:21",
  "last_owner_update": "2018-11-18T01:12:42",
  "last_post": "2018-11-18T05:13:27",
  "last_root_post": "2018-11-18T05:13:27",
  "last_vote_time": "1970-01-01T00:00:00",
  "lifetime_vote_count": 0,
  "market_history": [],
  "memo_key": "STM8chLBTabL9gNXY5GM2vHyYpoSajDsR5S1V6BCrZ752qpn6Fv8y",
  "mined": false,
  "name": "kylejo",
  "next_vesting_withdrawal": "1969-12-31T23:59:59",
  "other_history": [],
  "owner": {
    "account_auths": [],
    "key_auths": [
      [
        "STM6odPdwqByvVL537hX7Egrnj51HzozHkf6d8fZbRsK5jXHxqZxH",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "pending_claimed_accounts": 0,
  "post_bandwidth": 0,
  "post_count": 1,
  "post_history": [],
  "posting": {
    "account_auths": [
      [
        "busy.app",
        1
      ]
    ],
    "key_auths": [
      [
        "STM7e7t7dEc3JyGJqyjhDTpM9vJiutGMfifeL71Yf1pd6UiQNzdp3",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "posting_json_metadata": "{\"profile\":{\"profile_image\":\"https://cdn.steemitimages.com/DQmb6PQJdeALortkihiiVbj9irtoPeCWAKJtYgE3Fn3cRCo/jo.png\",\"name\":\"Kyle.Jo\",\"location\":\"Korea, Seoul\",\"website\":\"https://jo-s.tistory.com\"}}",
  "posting_rewards": 0,
  "proxied_vsf_votes": [
    0,
    0,
    0,
    0
  ],
  "proxy": "",
  "received_vesting_shares": "0.000000 VESTS",
  "recovery_account": "ovnd-tx-3",
  "reputation": 13634656,
  "reset_account": "null",
  "reward_sbd_balance": "0.000 SBD",
  "reward_steem_balance": "0.000 STEEM",
  "reward_vesting_balance": "0.000000 VESTS",
  "reward_vesting_steem": "0.000 STEEM",
  "savings_balance": "0.000 STEEM",
  "savings_sbd_balance": "0.000 SBD",
  "savings_sbd_last_interest_payment": "1970-01-01T00:00:00",
  "savings_sbd_seconds": "0",
  "savings_sbd_seconds_last_update": "1970-01-01T00:00:00",
  "savings_withdraw_requests": 0,
  "sbd_balance": "0.001 SBD",
  "sbd_last_interest_payment": "1970-01-01T00:00:00",
  "sbd_seconds": "0",
  "sbd_seconds_last_update": "2018-11-18T05:14:27",
  "tags_usage": [],
  "to_withdraw": 0,
  "transfer_history": [],
  "vesting_balance": "0.000 STEEM",
  "vesting_shares": "0.000000 VESTS",
  "vesting_withdraw_rate": "0.000000 VESTS",
  "vote_history": [],
  "voting_manabar": {
    "current_mana": 0,
    "last_update_time": 1542503307
  },
  "voting_power": 0,
  "withdraw_routes": 0,
  "withdrawn": 0,
  "witness_votes": [],
  "witnesses_voted_for": 0,
  "rank": 1899689
}

Withdraw Routes

IncomingOutgoing
Empty
Empty
{
  "incoming": [],
  "outgoing": []
}
From Date
To Date
2019/11/18 02:22:12
authorsteemitboard
bodyCongratulations @kylejo! You received a personal award! <table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@kylejo/birthday1.png</td><td>Happy Birthday! - You are on the Steem blockchain for 1 year!</td></tr></table> <sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@kylejo) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=kylejo)_</sub> ###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes!
json metadata{"image":["https://steemitboard.com/img/notify.png"]}
parent authorkylejo
parent permlinkjackal-the-boilerplate-library-for-django-rest-framework
permlinksteemitboard-notify-kylejo-20191118t022212000z
title
Transaction InfoBlock #38270265/Trx d445ab2ee6eb645c2d30cb2ccb87b86bb42b5cb0
View Raw JSON Data
{
  "block": 38270265,
  "op": [
    "comment",
    {
      "author": "steemitboard",
      "body": "Congratulations @kylejo! You received a personal award!\n\n<table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@kylejo/birthday1.png</td><td>Happy Birthday! - You are on the Steem blockchain for 1 year!</td></tr></table>\n\n<sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@kylejo) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=kylejo)_</sub>\n\n\n###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes!",
      "json_metadata": "{\"image\":[\"https://steemitboard.com/img/notify.png\"]}",
      "parent_author": "kylejo",
      "parent_permlink": "jackal-the-boilerplate-library-for-django-rest-framework",
      "permlink": "steemitboard-notify-kylejo-20191118t022212000z",
      "title": ""
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2019-11-18T02:22:12",
  "trx_id": "d445ab2ee6eb645c2d30cb2ccb87b86bb42b5cb0",
  "trx_in_block": 23,
  "virtual_op": 0
}
kylejoupdated their account properties
2018/11/26 11:38:21
accountkylejo
json metadata{"profile":{"profile_image":"https://cdn.steemitimages.com/DQmb6PQJdeALortkihiiVbj9irtoPeCWAKJtYgE3Fn3cRCo/jo.png","name":"Kyle.Jo","location":"Korea, Seoul","website":"https://jo-s.tistory.com"}}
memo keySTM8chLBTabL9gNXY5GM2vHyYpoSajDsR5S1V6BCrZ752qpn6Fv8y
posting{"account_auths":[["busy.app",1]],"key_auths":[["STM7e7t7dEc3JyGJqyjhDTpM9vJiutGMfifeL71Yf1pd6UiQNzdp3",1]],"weight_threshold":1}
Transaction InfoBlock #28036912/Trx 6202c3087380d0d379403523fce951485fe43435
View Raw JSON Data
{
  "block": 28036912,
  "op": [
    "account_update",
    {
      "account": "kylejo",
      "json_metadata": "{\"profile\":{\"profile_image\":\"https://cdn.steemitimages.com/DQmb6PQJdeALortkihiiVbj9irtoPeCWAKJtYgE3Fn3cRCo/jo.png\",\"name\":\"Kyle.Jo\",\"location\":\"Korea, Seoul\",\"website\":\"https://jo-s.tistory.com\"}}",
      "memo_key": "STM8chLBTabL9gNXY5GM2vHyYpoSajDsR5S1V6BCrZ752qpn6Fv8y",
      "posting": {
        "account_auths": [
          [
            "busy.app",
            1
          ]
        ],
        "key_auths": [
          [
            "STM7e7t7dEc3JyGJqyjhDTpM9vJiutGMfifeL71Yf1pd6UiQNzdp3",
            1
          ]
        ],
        "weight_threshold": 1
      }
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-11-26T11:38:21",
  "trx_id": "6202c3087380d0d379403523fce951485fe43435",
  "trx_in_block": 8,
  "virtual_op": 0
}
2018/11/18 06:27:06
authorkylejo
permlinkjackal-the-boilerplate-library-for-django-rest-framework
votercommeagle10
weight10000 (100.00%)
Transaction InfoBlock #27800398/Trx 8fd602a88c29428700019c0f9bc94602d72bbd17
View Raw JSON Data
{
  "block": 27800398,
  "op": [
    "vote",
    {
      "author": "kylejo",
      "permlink": "jackal-the-boilerplate-library-for-django-rest-framework",
      "voter": "commeagle10",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-11-18T06:27:06",
  "trx_id": "8fd602a88c29428700019c0f9bc94602d72bbd17",
  "trx_in_block": 15,
  "virtual_op": 0
}
2018/11/18 05:21:03
authorpliton
body스팀잇에 오신것 을 환영합니다.^^<br>저는 krwhale이라는 아기고래와 코인시세 챗봇을 운영하고 있어요 :)<br> - <a href=https://steemit.com/krwhale/@krwhale/krwhale-v2018-08-15>아기고래에게 Voting 받는 법</a><br> - <a href=https://pf.kakao.com/_Miqxod>코인시세 챗봇</a><br>1주일 뒤 부터 유용하게 쓰실 수 있을 거에요~^^<br><br>그리고 암호화폐 관련 데일리 리포트도 작성하고 있으니 관심 있으시면 많은 구독 부탁드릴게요~<br> - <a href=https://steemit.com/created/pliton-coin>Pliton의 암호화폐 데일리 리포트</a>
json metadata{"tags":["kr"]}
parent authorkylejo
parent permlinkjackal-the-boilerplate-library-for-django-rest-framework
permlinkre-kylejo-jackal-the-boilerplate-library-for-django-rest-framework-20181118t052103558z
title
Transaction InfoBlock #27799077/Trx d2653807b5357d13f1829fbbdf8ad167344b019f
View Raw JSON Data
{
  "block": 27799077,
  "op": [
    "comment",
    {
      "author": "pliton",
      "body": "스팀잇에 오신것 을 환영합니다.^^<br>저는 krwhale이라는 아기고래와 코인시세 챗봇을 운영하고 있어요 :)<br> - <a href=https://steemit.com/krwhale/@krwhale/krwhale-v2018-08-15>아기고래에게 Voting 받는 법</a><br> - <a href=https://pf.kakao.com/_Miqxod>코인시세 챗봇</a><br>1주일 뒤 부터 유용하게 쓰실 수 있을 거에요~^^<br><br>그리고 암호화폐 관련 데일리 리포트도 작성하고 있으니 관심 있으시면 많은 구독 부탁드릴게요~<br> - <a href=https://steemit.com/created/pliton-coin>Pliton의 암호화폐 데일리 리포트</a>",
      "json_metadata": "{\"tags\":[\"kr\"]}",
      "parent_author": "kylejo",
      "parent_permlink": "jackal-the-boilerplate-library-for-django-rest-framework",
      "permlink": "re-kylejo-jackal-the-boilerplate-library-for-django-rest-framework-20181118t052103558z",
      "title": ""
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-11-18T05:21:03",
  "trx_id": "d2653807b5357d13f1829fbbdf8ad167344b019f",
  "trx_in_block": 9,
  "virtual_op": 0
}
2018/11/18 05:21:00
authorkylejo
permlinkjackal-the-boilerplate-library-for-django-rest-framework
voterpliton
weight1000 (10.00%)
Transaction InfoBlock #27799076/Trx b363b2c21add3550c226965d29e5ac097cd996d4
View Raw JSON Data
{
  "block": 27799076,
  "op": [
    "vote",
    {
      "author": "kylejo",
      "permlink": "jackal-the-boilerplate-library-for-django-rest-framework",
      "voter": "pliton",
      "weight": 1000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-11-18T05:21:00",
  "trx_id": "b363b2c21add3550c226965d29e5ac097cd996d4",
  "trx_in_block": 21,
  "virtual_op": 0
}
allazsent 0.001 SBD to @kylejo- "Promote your post. Your post will be min. 10 resteemed with over 13000 followers and min. 25 Upvote Different account (5000 STEEM POWER). Your post will be more popular and you will find new frien..."
2018/11/18 05:14:27
amount0.001 SBD
fromallaz
memoPromote your post. Your post will be min. 10 resteemed with over 13000 followers and min. 25 Upvote Different account (5000 STEEM POWER). Your post will be more popular and you will find new friends. Send 0.5 SBD or STEEM to @allaz (post URL as memo ) Service Active.
tokylejo
Transaction InfoBlock #27798945/Trx bb3cba1557087d89603b6af10623c64c1dcbf88a
View Raw JSON Data
{
  "block": 27798945,
  "op": [
    "transfer",
    {
      "amount": "0.001 SBD",
      "from": "allaz",
      "memo": "Promote your post. Your post will be min. 10  resteemed with over 13000  followers and min. 25  Upvote Different account (5000  STEEM POWER). Your post will be more popular and you will find new friends. Send 0.5 SBD or STEEM to @allaz (post URL as memo ) Service Active.",
      "to": "kylejo"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-11-18T05:14:27",
  "trx_id": "bb3cba1557087d89603b6af10623c64c1dcbf88a",
  "trx_in_block": 14,
  "virtual_op": 0
}
2018/11/18 05:13:27
authorkylejo
body개발자는 자신만의 프레임을 자신도 모르는 사이에 구축한다. 이는 실물적인 코드에 국한되는 것이 아니다. 개발자의 개발 패턴, 문제를 해결 패턴, 리팩토링 패턴 등의 다양한 패턴들이 모이고, 쌓이고, 누적되면서 하나의 틀로써 굳어지게 는 것이다. 프레임의 장점은 일관적인 생산성을 유지시켜준다. 개발자는 다양한 자신만의 프레임을 계속해서 만들어야 한다. 내게도 몇 가지 프레임이 있다. 효율성과 편의성, 합리성을 추구하는 것 역시 나의 프레임이다. 그렇기에 같은 작업을 반복하거나, 비효율적으로 처리한다는 느낌이 들면 잠시 멈춰서 생각을 한다. 더 나은 방법이 없을까 하고. 그러다 보니 생산성 향상을 위한 코드들이 쌓여가기 시작했다. Jackal 은 그런 코드들의 일부분을 정리한 결과물이다. Django, DRF, Celery 등에 비하면 크게 보잘것없는 코드 더미에 불과하지만, 나의 생산성 향상에 큰 도움을 주었다. ![99DCCA405BE8E90E1D.jpg](https://cdn.steemitimages.com/DQmancDghN3hR99DjMb7CYyJrFq79FdMHu5k6rS3yriEbEh/99DCCA405BE8E90E1D.jpg) > 참고: 위 사진은 자칼이 아니라 늑대다. 근데 멋있으니 상관 없다. ## Jackal 간단 설명 Jackal은 Django와 DRF를 기반으로 개발을 하던 중 생긴 몇 가지 번거로우면서도 코드의 품질을 더럽히는 작업들을 단순화하고 효율화 시키다 보니 자연스럽게 만들어졌다. 다양한 프로젝트에서 Jackal을 사용하고 있지만, pypi로 관리되지 않아서 프로젝트마다 조금씩 변형되고 난잡해지기 시작했다. 그래서 흩어진 코드를 모아 Jackal 프로젝트를 구성하고, 범용성을 키워 패키징 하였다. 내가 직접 사용하면서 다양한 상황에 추가적으로 적용하기 위해서 커스터마이징이 용의 해야 했으며, Django의 settings 파일과 연동하기 위해서 DRF의 코드를 참조했다. Jackal의 핵심은 JackalAPIView 에 있다. JackalAPIView 는 DRF의 APIView 를 상속받아 그 기능을 확장한다. http request가 url resolver를 거쳐 view로 도달했을 때 APIView의 dispatch 함수가 실행된다. dispatch에서는 django의 원시 request 객체를 DRF에 맞춰 다듬고, 인증 체크, 권한 체크 등 view 가 실행되기 전에 처리해야 할 모든 작업을 실행한 뒤에, view 를 실행한다. JackalAPIView에선 dispatch, permission check, view 실행 등의 분기점마다 post, pre 메서드를 삽입하여 각 기능이 실행하기 전, 혹은 실행된 직후의 로직을 자유롭게 정의할 수 있다. 또한 get_object, get_filtered_queryset은 자칼의 QueryFilter와 연계되어 GET parameter를 기반으로 손쉬우면서도 직관적인 필터링을 제공한다. 필터링을 위해 난잡하게 코드를 칠 필요 없이 dictionary 형태로 filter_map 을 정의하기만 하면, 필터링이 알아서 진행된다. 위의 기능들 외에 다양한 Mixin View 가 존재하는데, 이 Mixin 은 상속 후 몇 가지 필드에 값만 할당하면 List, create, detail, update, delete, pagination list 등의 api 를 손쉽게 구현할 수 있다. 여담으로 Jackal 이란 이름은 라이브러리 자체가 이렇다 할 목적이 없고 두서가 없어서, django-filter 같은 이름을 지을 수가 없었다. 그래서 Django의 ja를 보고 자칼이 떠올라서 자칼이라 지었다. Jackal은 오픈소스로 Github에 공개되어있으며, pip를 이용하여 누구나 다운로드 가능하다. 코드에 문제가 있다면 Github에 issue 를 남기거나, pull request 를 날리면 된다. 문제점이 있다면, 문서화가 빈약하고, 테스트가 부족하다. 둘다 계속해서 진행 중이며, 아직은 0.0.x 대 버전으로 베타 배포 상태다. Github Repo: https://github.com/joyongjin/Jackal
json metadata{"tags":["kr","kr-join","programming","python","django"],"image":["https://cdn.steemitimages.com/DQmancDghN3hR99DjMb7CYyJrFq79FdMHu5k6rS3yriEbEh/99DCCA405BE8E90E1D.jpg"],"links":["https://github.com/joyongjin/Jackal"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkkr
permlinkjackal-the-boilerplate-library-for-django-rest-framework
titleJackal, the Boilerplate library for Django REST Framework
Transaction InfoBlock #27798925/Trx f0fa3e20bf969ae9caa6d4348e35137f546cc8cb
View Raw JSON Data
{
  "block": 27798925,
  "op": [
    "comment",
    {
      "author": "kylejo",
      "body": "개발자는 자신만의 프레임을 자신도 모르는 사이에 구축한다. 이는 실물적인 코드에 국한되는 것이 아니다. 개발자의 개발 패턴, 문제를 해결 패턴, 리팩토링 패턴 등의 다양한 패턴들이 모이고, 쌓이고, 누적되면서 하나의 틀로써 굳어지게 는 것이다. 프레임의 장점은 일관적인 생산성을 유지시켜준다. 개발자는 다양한 자신만의 프레임을 계속해서 만들어야 한다.\n\n 내게도 몇 가지 프레임이 있다. 효율성과 편의성, 합리성을 추구하는 것 역시 나의 프레임이다. 그렇기에 같은 작업을 반복하거나, 비효율적으로 처리한다는 느낌이 들면 잠시 멈춰서 생각을 한다. 더 나은 방법이 없을까 하고. 그러다 보니 생산성 향상을 위한 코드들이 쌓여가기 시작했다. Jackal 은 그런 코드들의 일부분을 정리한 결과물이다. Django, DRF, Celery 등에 비하면 크게 보잘것없는 코드 더미에 불과하지만, 나의 생산성 향상에 큰 도움을 주었다.\n\n\n\n\n\n\n![99DCCA405BE8E90E1D.jpg](https://cdn.steemitimages.com/DQmancDghN3hR99DjMb7CYyJrFq79FdMHu5k6rS3yriEbEh/99DCCA405BE8E90E1D.jpg)\n> 참고: 위 사진은 자칼이 아니라 늑대다. 근데 멋있으니 상관 없다.\n\n\n## Jackal 간단 설명\n\n\nJackal은 Django와 DRF를 기반으로 개발을 하던 중 생긴 몇 가지 번거로우면서도 코드의 품질을 더럽히는 작업들을 단순화하고 효율화 시키다 보니 자연스럽게 만들어졌다.\n\n\n\n다양한 프로젝트에서 Jackal을 사용하고 있지만, pypi로 관리되지 않아서 프로젝트마다 조금씩 변형되고 난잡해지기 시작했다. 그래서 흩어진 코드를 모아 Jackal 프로젝트를 구성하고, 범용성을 키워 패키징 하였다. 내가 직접 사용하면서 다양한 상황에 추가적으로 적용하기 위해서 커스터마이징이 용의 해야 했으며, Django의 settings 파일과 연동하기 위해서 DRF의 코드를 참조했다.\n\n\n\nJackal의 핵심은 JackalAPIView 에 있다. JackalAPIView 는 DRF의 APIView 를 상속받아 그 기능을 확장한다.\n\n\n\nhttp request가 url resolver를 거쳐 view로 도달했을 때 APIView의 dispatch 함수가 실행된다. dispatch에서는 django의 원시 request 객체를 DRF에 맞춰 다듬고, 인증 체크, 권한 체크 등 view 가 실행되기 전에 처리해야 할 모든 작업을 실행한 뒤에, view 를 실행한다.\n\nJackalAPIView에선 dispatch, permission check, view 실행 등의 분기점마다 post, pre 메서드를 삽입하여 각 기능이 실행하기 전, 혹은 실행된 직후의 로직을 자유롭게 정의할 수 있다.\n\n\n\n또한 get_object, get_filtered_queryset은 자칼의 QueryFilter와 연계되어 GET parameter를 기반으로 손쉬우면서도 직관적인 필터링을 제공한다. 필터링을 위해 난잡하게 코드를 칠 필요 없이 dictionary 형태로 filter_map 을 정의하기만 하면, 필터링이 알아서 진행된다.\n\n\n\n위의 기능들 외에 다양한 Mixin View 가 존재하는데, 이 Mixin 은 상속 후 몇 가지 필드에 값만 할당하면 List, create, detail, update, delete, pagination list 등의 api 를 손쉽게 구현할 수 있다.\n\n\n\n여담으로 Jackal 이란 이름은 라이브러리 자체가 이렇다 할 목적이 없고 두서가 없어서, django-filter 같은 이름을 지을 수가 없었다. 그래서 Django의 ja를 보고 자칼이 떠올라서 자칼이라 지었다.\n\n\n\nJackal은 오픈소스로 Github에 공개되어있으며, pip를 이용하여 누구나 다운로드 가능하다. 코드에 문제가 있다면 Github에 issue 를 남기거나, pull request 를 날리면 된다. 문제점이 있다면, 문서화가 빈약하고, 테스트가 부족하다. 둘다 계속해서 진행 중이며, 아직은 0.0.x 대 버전으로 베타 배포 상태다.\n\n\n\nGithub Repo: https://github.com/joyongjin/Jackal",
      "json_metadata": "{\"tags\":[\"kr\",\"kr-join\",\"programming\",\"python\",\"django\"],\"image\":[\"https://cdn.steemitimages.com/DQmancDghN3hR99DjMb7CYyJrFq79FdMHu5k6rS3yriEbEh/99DCCA405BE8E90E1D.jpg\"],\"links\":[\"https://github.com/joyongjin/Jackal\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "kr",
      "permlink": "jackal-the-boilerplate-library-for-django-rest-framework",
      "title": "Jackal, the Boilerplate library for Django REST Framework"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-11-18T05:13:27",
  "trx_id": "f0fa3e20bf969ae9caa6d4348e35137f546cc8cb",
  "trx_in_block": 11,
  "virtual_op": 0
}
kylejoupdated their account properties
2018/11/18 03:35:15
accountkylejo
json metadata{"profile":{"profile_image":"https://cdn.steemitimages.com/DQmb6PQJdeALortkihiiVbj9irtoPeCWAKJtYgE3Fn3cRCo/jo.png","name":"Kyle.Jo","location":"Korea, Seoul","website":"https://jo-s.tistory.com"}}
memo keySTM8chLBTabL9gNXY5GM2vHyYpoSajDsR5S1V6BCrZ752qpn6Fv8y
Transaction InfoBlock #27796961/Trx ca25129f109ce34fc0a7e1a7d836fa62be4e7c78
View Raw JSON Data
{
  "block": 27796961,
  "op": [
    "account_update",
    {
      "account": "kylejo",
      "json_metadata": "{\"profile\":{\"profile_image\":\"https://cdn.steemitimages.com/DQmb6PQJdeALortkihiiVbj9irtoPeCWAKJtYgE3Fn3cRCo/jo.png\",\"name\":\"Kyle.Jo\",\"location\":\"Korea, Seoul\",\"website\":\"https://jo-s.tistory.com\"}}",
      "memo_key": "STM8chLBTabL9gNXY5GM2vHyYpoSajDsR5S1V6BCrZ752qpn6Fv8y"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-11-18T03:35:15",
  "trx_id": "ca25129f109ce34fc0a7e1a7d836fa62be4e7c78",
  "trx_in_block": 10,
  "virtual_op": 0
}
kylejoupdated their account properties
2018/11/18 01:12:42
accountkylejo
active{"account_auths":[],"key_auths":[["STM6ZhNbtA9WsbAYMdPBDYMqAT2iJ4dCuyEgC3SUueJkMVSMXsMAE",1]],"weight_threshold":1}
json metadata
memo keySTM8chLBTabL9gNXY5GM2vHyYpoSajDsR5S1V6BCrZ752qpn6Fv8y
owner{"account_auths":[],"key_auths":[["STM6odPdwqByvVL537hX7Egrnj51HzozHkf6d8fZbRsK5jXHxqZxH",1]],"weight_threshold":1}
posting{"account_auths":[],"key_auths":[["STM7e7t7dEc3JyGJqyjhDTpM9vJiutGMfifeL71Yf1pd6UiQNzdp3",1]],"weight_threshold":1}
Transaction InfoBlock #27794111/Trx 62a99e367178a4c036b6e35f779ac741165a96ea
View Raw JSON Data
{
  "block": 27794111,
  "op": [
    "account_update",
    {
      "account": "kylejo",
      "active": {
        "account_auths": [],
        "key_auths": [
          [
            "STM6ZhNbtA9WsbAYMdPBDYMqAT2iJ4dCuyEgC3SUueJkMVSMXsMAE",
            1
          ]
        ],
        "weight_threshold": 1
      },
      "json_metadata": "",
      "memo_key": "STM8chLBTabL9gNXY5GM2vHyYpoSajDsR5S1V6BCrZ752qpn6Fv8y",
      "owner": {
        "account_auths": [],
        "key_auths": [
          [
            "STM6odPdwqByvVL537hX7Egrnj51HzozHkf6d8fZbRsK5jXHxqZxH",
            1
          ]
        ],
        "weight_threshold": 1
      },
      "posting": {
        "account_auths": [],
        "key_auths": [
          [
            "STM7e7t7dEc3JyGJqyjhDTpM9vJiutGMfifeL71Yf1pd6UiQNzdp3",
            1
          ]
        ],
        "weight_threshold": 1
      }
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-11-18T01:12:42",
  "trx_id": "62a99e367178a4c036b6e35f779ac741165a96ea",
  "trx_in_block": 13,
  "virtual_op": 0
}
ovnd-tx-3created a new account: @kylejo
2018/11/18 01:08:27
active{"account_auths":[],"key_auths":[["STM8ae4k5Cdp3LcLtGXFeEWRjXidtyFPeD6mxY4dJurpg5DWm2VXy",1]],"weight_threshold":1}
creatorovnd-tx-3
fee3.000 STEEM
json metadata
memo keySTM5oiJFFmVQpWx3LFnVY9hGoZy27ucid83FntzpPpbADwVwAn99R
new account namekylejo
owner{"account_auths":[],"key_auths":[["STM6NwdT5wVxKmcMWF9Wzp2wZEqVq7zctJEZGCjBcnSZfgsjm7eFJ",1]],"weight_threshold":1}
posting{"account_auths":[],"key_auths":[["STM82eCwZKjnZ9wMbMJLdRrNa5SEjCwLMZebwnaw55ULxG83ugGNR",1]],"weight_threshold":1}
Transaction InfoBlock #27794026/Trx 0b46fff1ad2cea7d4d139796dd98102718674664
View Raw JSON Data
{
  "block": 27794026,
  "op": [
    "account_create",
    {
      "active": {
        "account_auths": [],
        "key_auths": [
          [
            "STM8ae4k5Cdp3LcLtGXFeEWRjXidtyFPeD6mxY4dJurpg5DWm2VXy",
            1
          ]
        ],
        "weight_threshold": 1
      },
      "creator": "ovnd-tx-3",
      "fee": "3.000 STEEM",
      "json_metadata": "",
      "memo_key": "STM5oiJFFmVQpWx3LFnVY9hGoZy27ucid83FntzpPpbADwVwAn99R",
      "new_account_name": "kylejo",
      "owner": {
        "account_auths": [],
        "key_auths": [
          [
            "STM6NwdT5wVxKmcMWF9Wzp2wZEqVq7zctJEZGCjBcnSZfgsjm7eFJ",
            1
          ]
        ],
        "weight_threshold": 1
      },
      "posting": {
        "account_auths": [],
        "key_auths": [
          [
            "STM82eCwZKjnZ9wMbMJLdRrNa5SEjCwLMZebwnaw55ULxG83ugGNR",
            1
          ]
        ],
        "weight_threshold": 1
      }
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-11-18T01:08:27",
  "trx_id": "0b46fff1ad2cea7d4d139796dd98102718674664",
  "trx_in_block": 8,
  "virtual_op": 0
}

Account Metadata

POSTING JSON METADATA
profile{"profile_image":"https://cdn.steemitimages.com/DQmb6PQJdeALortkihiiVbj9irtoPeCWAKJtYgE3Fn3cRCo/jo.png","name":"Kyle.Jo","location":"Korea, Seoul","website":"https://jo-s.tistory.com"}
JSON METADATA
profile{"profile_image":"https://cdn.steemitimages.com/DQmb6PQJdeALortkihiiVbj9irtoPeCWAKJtYgE3Fn3cRCo/jo.png","name":"Kyle.Jo","location":"Korea, Seoul","website":"https://jo-s.tistory.com"}
{
  "posting_json_metadata": {
    "profile": {
      "profile_image": "https://cdn.steemitimages.com/DQmb6PQJdeALortkihiiVbj9irtoPeCWAKJtYgE3Fn3cRCo/jo.png",
      "name": "Kyle.Jo",
      "location": "Korea, Seoul",
      "website": "https://jo-s.tistory.com"
    }
  },
  "json_metadata": {
    "profile": {
      "profile_image": "https://cdn.steemitimages.com/DQmb6PQJdeALortkihiiVbj9irtoPeCWAKJtYgE3Fn3cRCo/jo.png",
      "name": "Kyle.Jo",
      "location": "Korea, Seoul",
      "website": "https://jo-s.tistory.com"
    }
  }
}

Auth Keys

Owner
Single Signature
Public Keys
STM6odPdwqByvVL537hX7Egrnj51HzozHkf6d8fZbRsK5jXHxqZxH1/1
Active
Single Signature
Public Keys
STM6ZhNbtA9WsbAYMdPBDYMqAT2iJ4dCuyEgC3SUueJkMVSMXsMAE1/1
Posting
Single Signature
Public Keys
STM7e7t7dEc3JyGJqyjhDTpM9vJiutGMfifeL71Yf1pd6UiQNzdp31/1
App Permissions
Memo
STM8chLBTabL9gNXY5GM2vHyYpoSajDsR5S1V6BCrZ752qpn6Fv8y
{
  "owner": {
    "account_auths": [],
    "key_auths": [
      [
        "STM6odPdwqByvVL537hX7Egrnj51HzozHkf6d8fZbRsK5jXHxqZxH",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "active": {
    "account_auths": [],
    "key_auths": [
      [
        "STM6ZhNbtA9WsbAYMdPBDYMqAT2iJ4dCuyEgC3SUueJkMVSMXsMAE",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "posting": {
    "account_auths": [
      [
        "busy.app",
        1
      ]
    ],
    "key_auths": [
      [
        "STM7e7t7dEc3JyGJqyjhDTpM9vJiutGMfifeL71Yf1pd6UiQNzdp3",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "memo": "STM8chLBTabL9gNXY5GM2vHyYpoSajDsR5S1V6BCrZ752qpn6Fv8y"
}

Witness Votes

0 / 30
No active witness votes.
[]