0
1

PythonでDjangoを使ってみる

Last updated at Posted at 2023-11-01

はじめに

Djangoに触れる機会があったので、プロジェクトの作成から画面の表示までまとめてみました。

Djangoとは

PythonでWebアプリケーションを開発するためのフレームワーク。

プロジェクトの作成から画面の表示まで

Djangoのインストール

# インストール
python3 -m pip install Django

# インストールされたか確認
python -m django --version

プロジェクトの作成

django-admin startproject ${プロジェクト名}
or
python3 -m django startproject ${プロジェクト名}

開発サーバを立ち上げてみる

以下のコマンドを実行するとサーバが立ち上がる。
http://127.0.0.1:8000/」にアクセスするとサーバの画面が表示される。

# デフォルトのポートで起動する
python3 manage.py runserver

# ポートを指定して起動する
python manage.py runserver ${ポート番号}

アプリケーションを作成

# プロジェクトのディレクトリへ移動
cd ${プロジェクト名}

# アプリケーションを作成
python3 manage.py startapp ${アプリケーション名}

プロジェクトからアプリケーションを認識できるようにする

「${プロジェクト名}/settings.py」を以下のように書き換える。

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    '${アプリケーション名}.apps.${apps内に記載されているクラス名}' ←追記
]

Viewを作成

「${アプリケーション名}/views.py」を以下のように書き換える。

from django.http import HttpResponse

def index(request):
    return HttpResponse("Hello World")

ルーティングの追加

「${プロジェクト名}/urls.py」を以下のように書き換える。

from django.contrib import admin
from django.urls import path,include

urlpatterns = [
    path("${パス}/", include("アプリケーション名.urls")),
    path('admin/', admin.site.urls),
]

アプリケーションにアクセスする

「http://127.0.0.1:8000/${パス}/」にアクセスすることでアプリケーションにアクセスできる。

その他

タイムゾーンの変更

「${プロジェクト名}/settings.py」を以下のように書き換える。

LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
↓
LANGUAGE_CODE = 'ja'
TIME_ZONE = 'Asia/Tokyo'

MySQLの設定を行う

以下のコマンドで接続に必要なドライバーをインストールする。

python3 -m pip install pymysql

「${プロジェクト名}/init.py」を以下のように書き換える。

import pymysql

pymysql.install_as_MySQLdb()

「${プロジェクト名}/settings.py」を以下のように書き換える。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}
↓
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'HOST': '${DBのホスト名}'',
        'PORT': '${DBのポート}',
        'NAME': '${DB名}',
        'USER': 'DBのユーザ名',
        'PASSWORD': 'DBのユーザのパスワード',
    }
}

参考

https://docs.djangoproject.com/ja/4.2/topics/install/#installing-official-release
https://docs.djangoproject.com/ja/4.2/intro/tutorial01/

0
1
0

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
0
1