Djangoプロジェクトからアプリ立ち上げまで

Django

前の記事ではDjangoを使い始めるため、仮想環境の設定と
Djangoのインストールとプロジェクトの立ち上げまでやりました。
これが前回の記事です。

【Django】MacでDjangoを始めるために最初にすべき作業
この記事ではMacで行うDjangoのインストール方法について紹介します。まずは仮想環境を説明・設定し、Djangoのインストール、Djangoのインストール後のプロジェクト作成、Djangoが起動するか確認します。ここではMacの使用を前提として書かれてあります。

今回はその続きで、アプリケーションの立ち上げと
最初に変更すべきファイル4点を紹介します。

この記事までがDjangoでWebアプリを作るために
誰もが行う必要な立ち上げ作業になります。

1. アプリの立ち上げ

まず、前回ではプロジェクトを立ち上げて、Djangoの起動を確認しました。
Djangoの起動が確認できると、こんな画像が出てきます。

ここから次はアプリの立ち上げになります。
以下のコードを打ち込んでアプリを作りましょう。

$ python manage.py startapp weatherapp(ここは好きな名前でOK)

これを打ち込むと、 project や manage.py があるフォルダに新しいファイルができます。
こんな感じになると思います。

project や manage.py と同じ階層に weatherapp ができました。
これがアプリになります。ここからWebアプリを作っていきます。

ちなみに、 weatherapp の中にあるファイルの説明です。ものすごくざっくりと紹介します。

  • migrations …データモデルの変更履歴を入れるでファイル
  • __init__.py …Pythonのルールとして必要。使用頻度:無
  • admin.py …管理者ページで表示するデータを設定する。使用頻度:少
  • apps.py   …Djangoにアプリを認識させる。使用頻度:無
  • models.py …データモデルを設定する。使用頻度:中
  • test.py   …アプリのテストを設定する。使用頻度:少
  • views.py  …URLごとの表示データを管理。使用頻度:多

2.立ち上げ時に変更する4つのファイル

2-1 アプリのurls.py

アプリを立ち上げたら、アプリフォルダの中に urls.py を作成します。
このファイルだけは新規作成になり、アプリの views.py とURLをつなげています。

from . import views
from django.urls import path

urlpatterns = [
    path('main/', views.main, name='main'),
]

各コードに関して簡単な解説です。

from . import views
from django.urls import path

1行目では同ディレクトリ内のviews.pyをインポートしています。
2行目はpath関数を引っ張ってきています。
このpath関数は以下で使われています。

urlpatterns = [
    path('main/', views.main, name='main'),
]

path(‘URL’, views.関数名, name=’URLパターンの名前’)という形で使います。
最初の2つの引数でURLとviewsの関数をつなげています。

2-2 プロジェクトのurls.py

アプリの urls.py を作成した後、次はプロジェクトの urls.py を変更します。

ここにはリクエストされたURLをアプリの urls.py につなげる役割をしています。
それが6行目の一文で記載されています。

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

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

2-3 アプリのviews.py

ここではURL先のウェブページに何を出すかを設定します。

from django.http import HttpResponse

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

1行目はHttpResponse関数を引っ張ってきています。
次のコードが何を出すか決める部分です。

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

def は関数を指定して、その後のmainは関数名。アプリのurls.pyで使われる部分です。
ここではHttpResponse関数で “Hello,~index.”の文字列を返しています。

2-4 settings.py

最後にsettings.pyのINSTALLED_APPSに立ち上げたアプリ名を入れましょう。
これはお約束みたいなものです。

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'weatherapp',
]

3. 再起動してアプリの確認

以上の4つのファイルを変更して、再度サーバーを立ち上げましょう。

$python manage.py runserver

すると無事に”http://127.0.0.1:8000”が立ち上がりますが、エラー文になります。
ここは落ち着いて、URL先を”http://127.0.0.1:8000/main/”と変更しましょう。

URLを変更すると、先ほどviews.pyで打ち込んだ”Hello,~index.”の文章が出てきます。
こんな感じです。

これでアプリの立ち上げの一歩目ができました。
ここからどんどんアプリを作っていきましょう!

タイトルとURLをコピーしました