[Python #9] [Django #2] Steem-python 설치 및 STEEM 정보를 웹화면에 노출하기

in SteemCoinPan •  3 months ago 

pixabay

지난 시간에 이어 오늘은 장고 프레임워크로 스팀 정보를 웹페이지에 뿌려본다.
우선 pip install steem로 steem-python을 설치한다. 👇

다행히 문제없이 설치가 된 듯하다. 다만, pip를 업그레이드하라는 안내가 뜬다.
pip install --upgrade pip로 최신 버전 20.1.1을 설치한다. 👇

pip list로 steem-python 버전이 1.0.1임을 알 수 있다. 스팀 라이브러리가 전혀 버전업이 안 되는 것 같은 느낌은 내 착각인 걸까?

python manage.py startapp blog로 blog라는 앱을 만들면 좌측에 자동으로 최소한의 파일들이 생성되는 것을 볼 수 있다.
Settings.py 파일 내 INSTALLED_APPS 에 blog.apps.BlogConfig 정보를 추가한다. 👇

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'blog.apps.BlogConfig',#new
]

👇 계속해서 touch steemchain/services.py로 blog 디렉토리에 services.py 파일을 생성 후 스팀에서 내 정보를 불러오는 함수를 작성한다.

from steem import Steem

def my_data():
    steem = Steem()
    return steem.get_account('june0620')

👇 그다음은 Views.py 라는 파일에 위에서 생성한 함수를 웹페이지에 뿌리는 함수를 작성한다. django의 HttpResponse 모듈을 사용하면 된다고 한다.

from django.shortcuts import render
from .services import my_data
from django.http import HttpResponse

def main_view(request):
    data = my_data()

    response = HttpResponse()
    response.write(data)
    return response

👇 touch blog/urls.py로 파일 생성 후 url 을 규칙에 맞게 넣어준다.

from django.urls import path
from .views import main_view

urlpatterns = [
    path('', main_view, name='myhome')
]

👇 위에서 만든 urls.py 는 메인 urls.py와 반드시 연결되어야 한다. path함수와 include함수가 동원되고, 이는 방문자가 url에 ''를 입력할 때 내 스팀 정보가 화면에 뿌려지게 된다는 정도로만 이해하고 일단 넘어가자.

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('blog.urls'))
]

👇 서버 실행 후 base url로 접속하면 아래처럼 내 스팀 정보가 화면에 노출되는 것을 볼 수 있다.
스타일은 어떻게 입히는지, 장고로 가능한지 의문이 많지만, 오늘은 여기까지...

.
.
.
.
[Cookie 😅]
Python 3.7.4
Django 2.2.4
steem-python 1.0.1

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

@june0620 transfered 1.0 KRWP to @krwp.burn. voting percent : 0.65%, voting power : 84.60%, steem power : 1824699.43, STU KRW : 1200.
@june0620 staking status : 50 KRWP
@june0620 limit for KRWP voting service : 0.15 KRWP (rate : 0.003)
What you sent : 1.0 KRWP
Refund balance : 0.85 KRWP [44527787 - bce83c6134ffc646ea4111938c22fa2613de4549]

@tipu curate

앗!
티퓨 감사합니다^^
!shop

你好鸭,ravenkim!

@june0620给您叫了一份外卖!

小浣熊豌豆脆

吃饱了吗?跟我猜拳吧! 石头,剪刀,布~

如果您对我的服务满意,请不要吝啬您的点赞~

@tipu curate

差了6秒,没赶上踢铺。啪啪啪啪啪

哈哈 😄
谢谢🙏,回拍👏