ホーム >  VPS >  ConoHaでDjangoのアプリケーション作成


Posted:2018/03/02 9:00:16 AM|Category : VPS

ConoHaでDjangoのアプリケーション作成

ConoHaVPSにセットアップしたDjangoへ、アプリケーションを作成します。

アプリケーションを作成

前回は、Djangoのデータベースを初期化・接続確認を行いました。今回は、公式サイトのチュートリアル通り、投票アプリを作ります。

プロジェクトとアプリケーションの違い

一つのプロジェクトには複数のアプリケーションを作れます。また、一つのアプリケーションは複数のプロジェクトで使えます。

プロジェクト

プロジェクトとは、あるウェブサイト向けに「設定」と「アプリケーション」の集合体です。

アプリケーション

アプリケーションとは、実際に何らかの処理を行うWebアプリケーションを指します。例えばブログシステムや公開レコードのデータベース、単純な投票アプリなどです。

作業の流れ

投票アプリを制作します。そのために、投票項目が格納されているQuestionテーブル(モデル)と、Questionの投票項目のテキストなどを格納するChoiceテーブル(モデル)を作成します。

  • Djangoのアプリケーション作成実行
  • ビューの作成
  • URLの対応付け
  • settings.pyの編集

準備

以下の準備を行います。

ConoHaVPSの準備

①ConoHaをレンタルします。

ConoHaVPSをレンタルしてみる

②ConoHaにroot以外のユーザを作ります。

ConoHaのroot以外のユーザを作る

③ConoHaにSSH接続するための設定を行います。

ConoHaのSSH接続

④ConoHaへのrootログインを禁止します。

rootからのログインを禁止

⑤ConoHaのportを22から変更します。

SSH接続するportを22から変更

⑥ConoHaVPSへApacheをインストールしてスタートページを表示します。

ConoHaのVPSにApacheインストール

Python・Djangoの準備

①ConoHaVPSへPython3をインストールします。

ConoHaのVPSにPython3環境を作る

②ConoHaVPSへPython3をインストールします。

ConoHaのVPSにPython3環境を作る

③ConoHaVPSへWSGIをインストールします。

ConoHaのVPSにApacheでPythonWebアプリを作る(WSGI)

④ConoHaVPSへDjangoをインストールします。

ConoHaのVPSにDjango環境を作る

⑤Djangoのデータベース接続・初期化します。

ConoHaでDjangoのデータベース接続・初期化

必要なもの

レンタルサーバ ConoHaのVPSサーバ
独自ドメイン ムームードメインで、独自ドメインのみ取得。2年契約で(2,000〜3,000円)くらい?

ConoHaVPSの環境

アプリケーションサーバ OS CentOS7.4
Apache 2.4.6 (CentOS)
Python 3.6.4
mod-wsgi 4.5.24
Django 2.0.2
mysqlclient 1.3.12
PyMySQL 0.8.0

クライアントPC

操作開発用のクライアントPCを用意します。windowsでもmacでも可能ですが、今回はubuntuを利用します。

OS Ubuntu 16.04.1 LTS 64bit

アプリケーション作成

すでにtest_djangoプロジェクトが作成済みとします。今回はtest_djangoプロジェクトに、pollsアプリケーションを作成します。

プロジェクト名 test_django
アプリケーション名 polls

①VPSにログインします。

前回作った仮想環境を起動します。

cd
. test_django/bin/activate

アプリケーション作成

①プロジェクトディレクトリへ移動します。

cd /var/www/cgi-bin/test_django/

②アプリケーションの作成コマンドを実行します。

python manage.py startapp polls

test_djangoプロジェクト、pollsアプリケーションのディレクトリ構成は以下のようになります。赤文字は、追加・変更するファイルです。

  • /var/www/..省略../test_django/
  • db.sqlite3
  • manage.py
  • test_django/
  • __init__.py
  • __pycache__
  • settings.py
  • urls.py
  • wsgi.py
  • polls/
  • __init__.py
  • __pycache__
  • admin.py
  • apps.py
  • migrations
  • settings.py
  • models.py
  • tests.py
  • urls.py
  • views.py

ビューの作成

①各アプリケーションに作成された、views.pyファイルを編集します。requestを受けて、responseを返す簡単なビューを作成しています。

sudo vi polls/views.py

以下のように編集します。

from django.shortcuts import render
from django.http import HttpResponse


def index(request):
    return HttpResponse('Hello World from Polls')

URLの対応付け

pollsのURLconfを作成します。ビューを呼ぶためには、URLの対応付けをする必要があります。

①pollsディレクトリにURLconfを作るために、urls.py というファイルを作ります。

sudo vi polls/urls.py

以下のように編集します。

from django.conf.urls import url

from . import views

urlpatterns = [
    url(r'^$', views.index, name='index'),
]

②ルートのURLにpollsを対応させます。ルートのURLconfにpolls.urlsモジュールを記述します。

sudo vi test_django/urls.py

以下のように編集します。

from django.conf.urls import url, include
from django.contrib import admin

urlpatterns = [
    url(r'^polls/', include('polls.urls'))
    url(r'^admin/', admin.site.urls),
]

settings.pyの編集

アプリケーション作成後は、設定ファイルの変更を行います。使用するアプリケーションをDjango上で定義するためです。

①settings.pyの「Application definition」の最下部にpollsを追加します。

以下のように編集します。

# Application definition

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'polls.apps.PollsConfig',
]

②再度Apacheを再起動します。

sudo systemctl restart httpd

③以下のURLでアクセスします。

http://VPSのグローバルIPアドレス

OR

http://VPSに設定した独自ドメイン

エラーが表示されず、以下の画面が出力されれば成功です。

次回

次回はVPSのDjangoにモデルを作成します。

ConoHaでDjangoのモデル作成


トラックバック用のURL
プロフィール

名前:イワサキ ユウタ 職業:システムエンジニア、ウェブマスター、フロントエンドエンジニア 誕生:1986年生まれ 出身:静岡県 特技:ウッドベース 略歴 20

最近の投稿
人気記事
カテゴリー
広告