こんにちは
Djangoでアプリを作って、誰でも使えるようサーバーにアップしたいと思ったので、勉強しながらやっています。
今回はDjangoを使ってローカルサーバーを立ち上げるところまでできたので、そこまでをご紹介したいと思います。
それ以降はまた次の記事で紹介したいと思っています。
ではさっそくいきましょう。
Djangoインストール
今回は前回と同じく、自作の翻訳機アプリを題材に話を進めていきたいと思います。
このような構成になっています。
Project |-main.py |_translate.py(main.pyとtranslate.pyはなくても大丈夫です。Projectフォルダは作っておいてください。)
まず、powershellでアプリを作りたいディレクトリに(ぼくの場合はProjectフォルダ)に移動します。
次にそこディレクトリで開発環境を作ります。
開発環境の作り方は以下を参考にしてください。
開発環境ができたら、起動してDjangoをインストールします。
以下のコードを打ってください。
$ pip install django
試しに本当にインストールされているか確認してみましょう。
$ python -m django --version
2.2.◯などのdjangoのバージョンが出てきたらインストールされています。
開発用サーバーを立てる
プロジェクトを立ち上げる
さて、ここまでいけたらつぎはいよいよアプリ制作に取り掛かっていきます。
と、その前に「プロジェクト」を立てなくてはいけません。
「プロジェクト」とはデータベースの管理や、アプリの基本設定などを行うファイルを集めたものです。
アプリを作る上では欠かせないものなので新規で作る際は必ずこの「プロジェクト」を立てなくてはいけません。
とはいえやり方は簡単で、以下のコードを打ちます。
$ django-admin startproject プロジェクト名
これで新たなディレクトリが自動で作られます。ぼくの場合はこのようになりました。
Project |-main.py |-translate.py |_translation(プロジェクト名) ←New!! |-manage.py |_translation |-__init__.py |-settings.py |-urls.py |_wsgi.py
それぞれの役割は以下の公式ドキュメントでご確認ください。

プロジェクトが立ち上がっているかどうか確認する
さて、プロジェクトが立ち上がっているかどうか確認しましょう。
以下のコマンドを打ち込んでみましょう。
$ python manage.py runserver
次のような出力が確認できれば成功です。
Performing system checks... System check identified no issues (0 silenced). You have unapplied migrations; your app may not work properly until they are applied. Run 'python manage.py migrate' to apply them. 〇月 〇, 2019 - 15:50:53 Django version 2.2, using settings 'プロジェクト名.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CONTROL-C.
ブラウザでhttp://127.0.0.1:8000/を確認すると下のような画面が出てくるはずです。

アプリを作る
さて、プロジェクトも立ち上がりあとはアプリを作るだけです。
手始めに「Hello World」を出力させてみましょう。
まず、先ほど作っておいた「プロジェクト」ディレクトリ(ぼくの場合はtranslationディレクトリ)に入ります。
そして、以下のコードを打ち込みます。
$ python manage.py startapp アプリ名
すると、以下のようにディレクトリができるかと思います。
Project |-...(省略) |_translation(プロジェクト名) |_translation | |_...(省略) |_translateapp(アプリ名) ←New!! |- __init__.py |-admin.py |-apps.py |-migrations/ | |-__init__.py |-models.py |-tests.py |_views.py
view.pyのコードを変える
では、まずview.pyを開いて以下のコードを打ち込んでいきます。
from django.shortcuts import render # Create your views here. from django.http import HttpResponse def index(request): return HttpResponse("Hello, world. You're at the polls index.")
view.pyは名前の通り見た目を管理するところです。これを呼び出すためにurl.pyを今度は変更します。
アプリディレクトリにあるurl.pyのコードを変える
今度はurl.pyというファイルを操作します。これは最初の段階ではアプリ(translateappディレクトリ)のディレクトリにはないので自分で作らなくてはいけません。(プロジェクトディレクトリにurl.pyが見えるかもしれませんが、これとはまた別のurl.pyを作ってください。)
Project |-...(省略) |_translation(プロジェクト名) |_translation | |_...(省略) |_translateapp(アプリ名) |- __init__.py |-admin.py |-apps.py |-migrations/ | |-__init__.py |-models.py |-tests.py |-urls.py ←新しく作る!! |_views.py
作ったら以下のコードを打ち込みます。
from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), ]
プロジェクトディレクトリにあるurl.pyのコードを変える
今度はプロジェクトディレクトリにあるurl.pyに変更を加えます。
Project |-...(省略) |_translation(プロジェクト名) | |-manage.py | |_translation | |-__init__.py | |-settings.py | |-urls.py ←今度はこっち!!(これは最初からあるので作らなくていいです。) | |_wsgi.py |_translateapp(アプリ名) |-...(省略)
以下のコードをurl.pyに書き込みます。
from django.contrib import admin from django.urls import path,include(includeを付け加える) urlpatterns = [ path('polls/', include('polls.urls')), ←付け加える path('admin/', admin.site.urls), ]
サーバーを立てる
さあ、それではもう一度サーバーを立てましょう。
以下のコードをコマンドで打ってください。
python manage.py runserver
ブラウザでhttp://127.0.0.1:8000/を確認してみましょう。
Hello, world !

(画面の文字はちょっと違います。すみません。)
と画面に表示されたら成功です!!
続きはこちら
参考


コメント
[…] 前回の続きです。今回はアプリを具体的に組み立てていきたいと思います。 […]
[…] Scrapyを使うに当たり、以前紹介したDjangoのようにプロジェクトを作っていきます。 […]
[…] […]