LoginSignup
3
4

More than 5 years have passed since last update.

Djangoの使い方(インストールから立ち上げ)

Last updated at Posted at 2018-12-14

はじめてのDjangoアプリ作成の実践です。

環境

macOS mojave
python 3.7.1(anaconda)
Django 2.1.2

Djangoのinstall

anacondaなので、ターミナルに以下入力。
conda install django
終わったら、バージョン確認。
python -m django --version

2.1.2

新規プロジェクト作成

プロジェクトを置くところに移動してから、
django-admin startproject mysite
mysiteというフォルダが作成される。

django-admin startproject mysite .
のように最後に「.」をつけると、現在の作業ディレクトリにDjangoをインストールして、という明示的な意味になるそうだ。どちらもでもうまくいく。

startprojectで作成されたディレクトリとファイル

ターミナルから$ treeで確認できる。

mysite/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        wsgi.py

manage.py …サイト管理用のスクリプトファイル
setting.py …サイトの設定ファイル
urls.py …urlresolverを使ったURLのパターンリストを含んでいる。
とりあえず、この辺りを押さえておいて、ほかのファイルを削除しないこと。

開発用サーバーの立ち上げ

python manage.py runserver

ブラウザで http://127.0.0.1:8000/ にアクセスすると、

スクリーンショット 2018-12-14 8.54.56.png

無事にDjangoが稼働しました。

日本語のセッティングにするには、setting.pyを以下のように修正する。

# setting.py

LANGUAGE_CODE = 'ja-AP'
TIME_ZONE = 'Asia/Tokyo'
USE/TZ = Flase

こうしてhttp://127.0.0.1:8000/ にアクセスすると、ちゃんと日本語になりました。

スクリーンショット 2018-12-18 13.51.29.png

アプリケーションを作る

python manage.py startapp polls
これでpollsというディレクトリ(中身↓)ができる。

polls/
    __init__.py
    admin.py
    apps.py
    migrations/
        __init__.py
    models.py
    tests.py
    views.py

pollsディレクトリに移動して、ビュー(view)の作成をすすめる。

ビュー(view)の作成

ブラウザで表示されるページをDjangoで作成していきます。

polls/views.pyを編集

from django.http import HttpResponse


def index(request):
    return HttpResponse("Hello, from Django. You're at the polls index.")

URLの対応付け polls/urls.py

viewを呼ぶだめには、URLの対応付けが必要
URLconfをpollsディレクトリに作る->file urls.pyを作って以下入力。

# polls/urls.py
from django.urls import path
# カレントディレクトリからviewsをインポート
from . import views

# pathのなかの引数3つ、’’はURL(この場合は、localhost:8000/polls)
# 第1引数はURL、第2引数はviewsファイルのindex関数を参照。
urlpatterns =[
      path('', views.index, name='index').
]

次はルートのURLconfであるmysite/urls.pyにpolls.urlsモジュールの記述を反映させる。

# mysite/urls.py
from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path('polls/', include('polls.urls')),
    path('admin/', admin.site.urls),
]

対応付け mysite/urls.py

django.url.includeのimportを追加して、url patternsのリストにincludeを追加する。
紐付けができたら、もう一度確認。

localhost:8000/polls/

スクリーンショット 2018-12-14 9.25.56.png

viewができて、pollsとmysiteのurls.pyでURL対応付けが完了しました。

path関数

path関数は引数を4つとるが、うち、routeとviewは必須で、kwargsとnameは省略可能。

3
4
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
3
4