LoginSignup
2
1

More than 1 year has passed since last update.

Pythonの勉強がてらDjango,PokeAPIでポケモンを並べる

Last updated at Posted at 2023-03-06

きっかけ

  • 最近Excelで設計書を書く時、繰り返しを感じる(自動化したい)
  • chatGPTが話題
    等々の理由からPythonを学ぶ

でも文法の勉強は退屈、、

→ならフレームワークも含めてポートフォリオを作った方が面白いし覚えられる

という経緯

ネタ探し

特にネタが思いつかない時はAPIを使わん手は無いですね。イイ感じのAPIを探していたらポケモンのAPI(非公式)が有ったので早速使います。

フレームワーク探し

ネタは決まったので、フレームワークを探します。サクッと調べ、Flaskと迷いましたが、結局名前を聞いた事が有るDjangoにしました。

捌いて行く

具材が揃ったので調理して行きます。

とりあえずDjango Hello Worldまで進める

→ MTVという概念を学ぶ。今回はビジネスロジックを構築しない為、モデルは使わない。
ビュー内でロジックを完結し、テンプレートに出力します。
→ PokeAPIからのレスポンスを確認
→ デザインはBootstrapで整える程度に作ります
→ ロジックに関しては1匹のポケモンで表示が上手く行くことを確認した後に、n匹で表示出来る様に作ります。
n=リクエスト数であり、数が増えるとデータ量も増えるので今回は20(大体一ページ分)で固定します。
ポケモンずかんは現在1008番まで登録されているので、データ制限に引っ掛からなければ1008まで表示可能です。

完成!

python manage.py runserver
でローカルホスト実行

http://127.0.0.1:8000/hello 
でビューからテンプレートの表示まで行います

n=1の時
スクリーンショット 2023-03-06 21.03.59.png

n=20
スクリーンショット 2023-03-06 0.49.32.png

ヘッダーを少し凝ってみました。後、一応タイプに応じて背景色を付けました。

出来上がったリポジトリ

感想

イイ感じに出来ました。

MTVフレームワークの概念及びPython基本文法を学びました、お終い。

2
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1