表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
とある割烹芸人の開発日誌 ~100日以内に割烹エディターをリリースする割烹芸人~  作者: とある割烹芸人まーくつーせかんど
β版への道

この作品ページにはなろうチアーズプログラム参加に伴う広告が設置されています。詳細はこちら

24/48

64日目 割烹芸人の勉強2

今回はDjangoのざっくりとした概要です。

■Djangoとは?


Python用のフルスタック(開発業務における一通りの需要に応えられるような機能を持つこと)フレームワークです。

Djangoだけで大体のWebサービスを作ることができます。


特徴としては、開発用の機能が充実しており、管理サイトも簡単に構築できるところです。


そのため迅速に開発ができるようになっています。



余談ですがPythonには他にもフレームワークがあって、bottle、Flask、Tornado、Ploneなどが存在します。


その中でも人気なのはDjangoとFlaskみたいですね。凝ったものを作りたい人はDjango、簡単なものはFlaskといった感じ。



今回のは別にDjangoじゃなくてFlaskでもよかったんですが、今後作りたいものがDjangoを使わないと難しそうなので経験値稼ぎのために使っています。




ではここからDjangoの流れについて簡単にまとめておきます。


■Djangoの処理の流れ


挿絵(By みてみん)


大体こんな感じ。


Djangoの中にはアプリケーション(特定の機能で分割されている)が複数あって、URLでどのアプリを使うのか判別する。



※アプリケーションはすべてを統合することもできるけど、なるべく独立に作って、各アプリを消しても影響がないように作る。例えば /user/とかいうURLならUser機能のアプリケーション、/read/ならRead用のアプリケーションなどなるべく独立に作る。



URLでそのアプリにリクエスト、Viewでどんなデータ(modelからデータベースに行ってデータを貰う)を使って、どのページ(テンプレートのページを用意しておいて、どれを使えばいいかviewで判断)を使うか処理。


貰った出たとページを組み合わせて、その結果をユーザーに返す。



雑にこんな感じ。




■Djangoプロジェクトの開始



Djangoは1つのWebアプリをプロジェクトという単位で管理する。

その中にはプロジェクトの設定ファイルとアプリケーション群で構成される。



挿絵(By みてみん)



■とりあえず作ってみる。



※チュートリアルにDjangoGirlsというものがあるので興味があればのぞいてみるといいと思います。とても初心者向けでわかりやすいです。


Django Girls のチュートリアル

https://tutorial.djangogirls.org/ja/




事前にコマンドラインを立ち上げておく。


作り方、まずは適当なディレクトリにプロジェクトフォルダを作成。(例ではdjangogirls)



$ mkdir djangogirls

$ cd djangogirls



そのあとmyvenvという仮想環境(virtual environment)を作成



$ python -m venv myvenv



仮想環境の実行。


myvenv\Scripts\activate


Djangoのインストール(例ではrequirements.txtでインストールしている)


pip install Django~=2.2.4



無事Djangoがインストールされたので、プロジェクトの作成。



django-admin startproject mysite .


mysiteというプロジェクトを立ち上げました。


この時点でのフォルダ構造はこんな感じ。


挿絵(By みてみん)



manage.pyは開発関係のためのコマンドファイル。

settings.pyはプロジェクトを管理するためのファイル。


挿絵(By みてみん)


中身はこんな感じ。


まずタイムゾーンとランゲージの変更。あと静的ファイルのパス追加。

TIME_ZONE = 'Asia/Tokyo'

LANGUAGE_CODE = 'ja'

STATIC_URL = '/static/'

STATIC_ROOT = os.path.join(BASE_DIR, 'static')



データベース(sqlite3)の作成

python manage.py migrate




と、ここまで来たら開発用ウェブサーバーの起動。(動作確認用)



python manage.py runserver



起動したらhttp://127.0.0.1:8000/にアクセス


挿絵(By みてみん)




ここまでがプログラミング言語でいう、Hello Worldです。


ここからDjangoの世界に入って開発を進めていくわけですね。


ということでDjangoプロジェクトを立ち上げることができましたと。




Djangoではプロジェクト(Webアプリ)を作成し、機能ごとにアプリケーションを作成していくことになります。


DjangoではModelデータベース、View(呼び出し)、Template(HTMLテンプレート)、URLs(URLパターン)、Forms(Modelに基づく入力フォーム)などでどのように動作するかが決められており、それぞれを定義していくことによって動きます。


基本的にURLを決める(urls.py)→どのデータとテンプレートを呼び出すか(view.py)→データベースからの呼び出し(models.py)→テンプレートからの呼び出し(templates)の手順で作っていくことになります。


必要な場合はFormを作ったりします。



あんまり細かいこと言いだすとキリがないので概要としてはこれくらいで、次回から具体的に作っていきます。



挿絵(By みてみん)


まだまだ勉強しないといけないことが沢山です……

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

この作品はリンクフリーです。ご自由にリンク(紹介)してください。
この作品はスマートフォン対応です。スマートフォンかパソコンかを自動で判別し、適切なページを表示します。

↑ページトップへ