はじめに
こんにちは、3年生のいーじーです!
カレンダー交換してくれたさかすとさっちーさんには感謝です💕
みなさんも体は大事にしてください
流れとしては
①フレームワークとは?
②一般的なウェブサーバとDjango
③メリット・デメリット・できること
④Djangoのファイルの説明
⑤「hello world」を提示させる
で行きたいと思います!
①フレームワークとは?
まず、DjangoはPythonのウェブアプリケーションフレームワークです
フレームワークは使うと効率的にアプリケーションができるもの
最悪、あってもなくても同じものが作れます。イメージは下の写真
②一般的なウェブサーバとDjango
一般的なウェブサーバ:URLと対象のファイルが1:1の関係
Django:上記と異なり複雑な処理を行う
これだと少し分かりづらい人もいると思うので、
一般的なウェブサーバ→ドーナツ屋さん
Djangoを使用した仕組み→ラーメン屋さん
に例えてみましょう。
一般的なウェブサーバ:
ドーナツ1つ頼むとそのままドーナツが1つもらえる=商品と注文が1:1
Django:
ラーメンの味や大きさ、どんなトッピングが必要か様々な種類がある。
=複雑な処理を行っている
実際にYouTubeの例でみると
③メリット・デメリット・できること
メリット
・ネットに情報が多いので学びやすい
・素早いプロトタイプ開発が可能
*実はDjangoは「締め切りの味方である完全主義者」がモチーフらしい
・簡単に共有ができる
・MTVモデルでアプリ開発が可能
デメリット
・処理速度が遅め
・全ての機能を把握するまで時間がかかる
・セキュリティ面への配慮が難しい
*セキュリティに知識がある人なら大丈夫
・Modelへのマッピングに注意
できること
・管理画面が作れる
・ユーザ認証ができるなどたくさん!!
④Djangoのファイルの説明
Djangoは環境を整えると勝手にファイルが作られています!
写真の低とかは重要度のことです
あんまり重要じゃないファイル
・_init_.py
→ほかのファイルからクラスや関数を呼び出すことができる
・wsgi.py
→WSGIという仕様にのっとってウェブサーバとDjango間を取り持つ役割
=ウェブサイトを公開する際の選択肢を増やせる
*ファイルを細かく編集する必要がない
・asgi.py
→多くのリクエストの記録を取って、同時に多くの処理ができるようにしている
難易度は高めでDjango3から新しく導入された
重要なファイル
・manage.py
→Djangoに備わっている便利な機能を使う
・setting.py
→プロジェクト全体の設定を行う
・urls.py
→ブラウザから受け取ったrequestをもとに、次のview.pyに対して指示を出す
⑤「hello world」を提示させる
①立ち上げ
コマンドプロンプトやターミナル等に下のを打つ
ファイル名はなんでもおっけいです〇
mkdir project1
cd project1
python3 -m venv venv
source venv/bin/activate
pip install Django==3.2
django-admin startproject helloworldproject
②urls.pyの編集
from django.contrib import admin
from django.urls import path
from.views import helloworldfunc
urlpatterns = [
path('admin/', admin.site.urls)
path('helloworldurl/', helloworldfunc)
]
③views.pyの作成+編集
views.pyはurls.pyと同じディレクトリに作成しましょう!
from django.http import HttpResponse
def helloworldfunc(request):
return HttpResponse('hello world')
④実際に開いてみる
コマンドプロンプトやターミナル等に下のを打つ
注意:manage.pyがあるディレクトリで行う
python3 manage.py migrate
python3 manage.py runserver
実際に下のURLにログインすると
http://127.0.0.1:8000/helloworldurl/
成功です!
参考文献
1.カクレノ>HOME>書類・ファイル>文書
https://kotonohaworks.com/free-icons/bunsho/
2.素材Library.com
https://www.sozai-library.com/sozai/554
3.いらすとや
https://www.irasutoya.com/
4.大橋亮太・吉田薫(2022) Djangoのツボとコツがゼッタイにわかる本[第2版]
5.Djangoの機能でできること5つ メリット・デメリット4つとは?
https://www.acrovision.jp/career/?p=2962
6.Icon-pit https://icon-pit.com
7.ITCブログ【発見!】Djangoで作られたサイト有名どころ10選
https://itc.tokyo/django/10-websites-made-with-django/
8. ポテパン Django案件のイマがわかる!知って見つかる最適案件
https://freelance.potepan.com/blogs/4425#chapter_8
*今回のプログラム文は
4.大橋亮太・吉田薫(2022) Djangoのツボとコツがゼッタイにわかる本[第2版]
から引用しています。