IT-LIFEブログ

主にIT系のことや時事ネタや、たまに雑記

DjangoでAPサーバを立ち上げてみた!

どうも〜、あつかんです。

今回は、最近話題のPythonフレームワークDjangoでHelloWoldを返すアプリケーションサーバを作ってみました! まずは下記記事を参照してDjangoをインストールしましょう! qiita.com

以下の手順でHelloWoldを返すアプリケーションサーバが作成されます!

環境設定

Hello World

  1. プロジェクトの作成
    プロジェクト名をtutorialとする
django-admin startproject [プロジェクト名]
django-admin startproject tutorial
tutorial
|
├── manage.py
|
└── tutorial
    ├── __init__.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py
  1. アプリの作成
    アプリ名をhelloとする
python manage.py startapp [アプリ名]
python manage.py startapp hello
tutorial
|
├── manage.py
|
├── tutorial
|   ├── __init__.py
|   ├── settings.py
|   ├── urls.py
|   └── wsgi.py
|
└── hello
    ├── __init__.py
    ├── admin.py
    ├── apps.py
    ├── migrations
    │   └── __init__.py
    ├── models.py
    ├── tests.py
    └── views.py
  1. tutorial/settings.pyにアプリを追加
     INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
+       'hello.apps.HelloConfig',
    ]
  1. tutorial/urls.pyからhello/urls.pyにルーティング
-   from django.conf.urls import url
+   from django.conf.urls import url, include
    from django.contrib import admin

    urlpatterns = [
        url(r'^admin/', admin.site.urls),
+       url(r'^hello/', include('hello.urls')),
    ]
  1. hello/urls.pyを作成し、hello/views.pyのindexメソッドを呼び出す
from django.conf.urls import url
from . import views

urlpatterns = [
    url(r'^world$', views.index),
]
  1. hello/views.pyのindexメソッドで、Hello Worldを返す
    from __future__ import unicode_literals
    from django.db import models
+   from django.http import HttpResponse

+   def index(request):
+       return HttpResponse("Hello World")
  1. サーバを起動
python manage.py runserver
  1. 127.0.0.1:8000/hello/worldで確認
open 127.0.0.1:8000/hello/world

処理の流れ

f:id:nok-0930-ss:20190202193000p:plain
plantUML

以上、HelloWoldを返すアプリケーションサーバDjangoで実装してみたでした!