最終更新日:2019.09.9【Python/Django】webフレームワークを使う6つのコツ〜最短距離でアプリをつくるために【初心者向け】とある業界のWeb予約システムをつくることになりまして、Pythonのweb用フレームワーク『Django(ジャンゴ)』を毎日のように触っています。その中で得た感覚というか使うコツというのをまとめてみることにしました。個人的な意見や感覚が入っているので寛大な心でお読みくださいませ。Djangoのバージョンは2.1です。『Python』関連ではこんな記事も読まれています。フレームワークは便利って事を知るフレームワークというのはざっくりいえば、よく使う機能をまとめて使いやすくしたものかなと思います。メールはこれからも残るんでしょうねなどいろんなホームページでいろんな機能を見ますが、これらを1からつくるとなると、途方もない時間・労力がかかります。ログイン機能だけでも人によっては2〜3ヶ月かかるんじゃないかと思ったり、せっかくつくってもセキュリティが穴だらけなんてなったら目もあてられません。使う機能が最初から入ってて、セキュリティもしっかり考えられたフレームワークを使う事で、ものすごい短時間で高品質のWebアプリで作れちゃうというわけです。簡単なものなら1週間もあればできちゃいます。アオキこりゃ使うっきゃないですな。レールに乗ってざっくり構成を把握するフレームワークというのは大なり小なり、よく使う機能をまとめて使いやすくしているため、ある程度フォルダ構成やファイルの名前や役割が決まっています。レールが敷かれているので、そのルールに合わせてつくっていく、という形になります。慣れてきたらカスタマイズすればいいんですが、最初はとにかくレールにうまく乗る事が大事かと。『Django(ジャンゴ)』のレールはこんな感じかなと思っています。『Django(ジャンゴ)』の仕組みはMTVと呼ばれたりします。(ビュー・・処理全般)renderとかModelとかFormとかはViewにつながって、Viewがとにかく頑張るので、Viewは例えるなら舞台をしきる監督のような役割かなと思います。『Django』でいうとTemplate(テンプレート・見た目)が見えている事になります。次に、気になる映画のページなどのボタンを押すと、urls.pyというファイルでURLを判断して、それにあったViewを見にいって、Viewに書いてある処理をして、Template(見た目)を表示するという流れで動くようになっています。図でいうとピンクの矢印です。予約フォームに名前や電話番号を入力すると思います。予約フォームに名前や電話番号を入力して、「予約する」的なボタンを押した後は、urls.pyというファイルでURLを判断して、それにあったViewを見にいって、Viewに書いてある処理をして(Formに入ってきた情報を保存する)Template(見た目)を表示するという流れになります。これまたピンクの矢印です。この流れをなんとなくでいいので把握するといいんじゃないかなと思います。新しいページを1つ増やそうと思ったら、Template(見た目)のページを1つ増やすだけではダメという事になります。ページが増えた事を追記する必要があります。始めは、フレームワーク初心者ページ1つつくるのに3つもファイル触るのめんどいわーってなってしまうんですが、しばらく作っていくと、3つのファイルを触ることにも慣れてきて、こちらの方が便利という事が体感できてくると思います。アオキそれがレール(『Django』のルール)に乗るってことなんでしょうなぁ。始めて『Django(ジャンゴ)』を触った時に「えっ?」ってなったのが、アオキなんでurls.pyが2つもあるの・・?ということでした。『Django(ジャンゴ)』の構成は、1つのプロジェクトがあって、その下に個別のアプリがある。いう想定で作られているため、プロジェクトの中にもurls.pyがあって、その下の個別アプリにもurls.pyがある(自分でつくる必要あり)という仕組みになっています。今触っているのが、どっちのurls.pyなのかというのを把握するようにするといいのかなと思います。モデルとフォームをつなげてみるwebアプリをつくろうとすると、多くの場合でフォームが必要になります。口コミの投稿ディズニーランドのチケットの予約などなど。『Django(ジャンゴ)』なら最初からまるっと入っているので、そのレールに乗っかってつくってみるといいです。タグをいるという流れになるかなと思います。フレームワーク初心者フォーム1つつくるのに、4つもファイル触るの?!なんて最初は思っちゃうんですが、これも何回かやっていると慣れてくるので、淡々とこなしてみるといいかなと。ジャンゴガールズを繰り返すざっくりと流れがわかったら、あとはとにかく実践です。最低3回くらいは繰り返してやってみて、わかりづらいところはノートにメモなどとってみるといいです。Tutorialhttps://tutorial.djangogirls.org/ja/この図も何かしら参考になれば幸いです。さいごにフレームワークはうまくレールに乗るととても早いスピードで開発ができます。仕事となるとどうしてもスピード、納期が求められるので、フレームワークを有効につかえるようになるとなにかと便利かなと思います。ジャンゴガールズやったあとはぜひ『現場で使えるDjangoの教科書』もおすすめです。Amazon調べ-詳細)KindleAmazon楽天市場Yahooショッピング『Python』関連ではこんな記事も読まれています。【Python】用語集まとめてみた。)mアオキのツイッターアカウント。)この記事へのコメントはありません。この記事へのトラックバックはありません。返信をキャンセルする。-URL上に表示された文字を入力してください。検索プロフィール世界のアオキ問題発見と解決のための新時代の教育を。STEAMも、プログラミングも。テスト用の知識ではなく世界を変える知識を。CoderDojo熊本支部の中の人。難しい事をわかりやすく伝える事に喜びを感じております。尊敬する人はレオナルド・ダ・ビンチ(雑食系天才)。ゴルフできません(汗YoutubeTwitterFacebookInstagram最近の記事2020.02.14AR/VRエンジニアの求人が1400%増というレポ...昨日だったか、気になる記事を見つけました。米国を中心にした開発者向け求人プ...2020.02.13【Laravel】フロントエンドをわかりやすくまと...初心者向けに『Laravel』解説の追加動画を撮影中で、これは公開してもいい...2020.02.12【Laravel】初心者の向け追加動画撮影中【Ud...少し前に『Udemy』向けに『PHP』の講座を開設しまして。DXの到来を見据えて久々に衝撃的な本でした。『アフターデジタル』。