【Django入門】Mac環境にDjangoを導入する1(環境構築とプロジェクト作成)

スポンサーリンク

◆対象

Pythonをやりたい!
とりあえずメジャーなフレームワークで構築してみよう
Djangoで構築

という方の手順を記録してみました。

 

スポンサーリンク

■Pythonの動作確認

$ python3 --version
Python 3.5.2

動作が確認取れない場合はPythonをインストールする

 

◆仮想環境構築

 

以下で仮想環境を構築する
仮想環境には virtualenv、venv がありますが、
virtualenv がデファクトスタンダードらしいです。


venvは、virtualenvみたいな機能を標準でもサポートしようぜ!
ということでPython3.3から追加された標準モジュールのようです。


下記では、venv で作成しています。

 

スポンサーリンク

■ディレクトリの作成

まず、仮想環境を作成したいディレクトリまで移動します
$ mkdir sample_app
$ cd sample_app

 

スポンサーリンク

■仮想環境を作成する

$ python3 -m venv myvenv

 

スポンサーリンク

■ディレクトリが作成されたことを確認

$ ls
myvenv

 

スポンサーリンク

■treeにより作成されたディレクトリ内容を確認してみる

treeをインストールしていない場合はインストールする
$ brew install tree

treeによるディレクトリ内容を確認
$ tree -L 1 myvenv
myvenv
  ├── bin
  ├── include
  ├── lib
  └── pyvenv.cfg

 

スポンサーリンク

■Djangoインストール

myvenv user$ pip3 install Django==1.11.5

 

◆プロジェクト作成

 

スポンサーリンク

■現在位置の確認

$ pwd
/Users/#{myname}/Desktop/sample_app/myapp
$ tree -L 1 .
.
├── bin
├── include
├── lib
└── pyvenv.cfg

 

スポンサーリンク

■プロジェクトを作成する

$ django-admin startproject myapp .
$ ls
bin  lib  myapp
include  manage.py pyvenv.cfg
$ tree -L 1 .
.
├── bin
├── include
├── lib
├── manage.py
├── myapp
└── pyvenv.cfg

 

スポンサーリンク

■設定ファイル内のタイムゾーンを変更する

Vimを使って編集してみました
$ cd myapp
$ vim settings.py


以下の内容に変更します

```
# LANGUAGE_CODE = 'en-us'
LANGUAGE_CODE = 'ja'

# TIME_ZONE = 'UTC'
TIME_ZONE = 'Asia/Tokyo'

USE_I18N = True

USE_L10N = True

# USE_TZ = True
USE_TZ = False
```

 

スポンサーリンク

■データベースの設定

SQLiteを使用する場合は myapp/settings.py の中に以下が記載されています。
MySQL、PostgreSQLを使う場合は応じて変更が必要

```
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}
```

 

スポンサーリンク

■DBのマイグレーション

SQLite3動作確認(macには予めインストールされている)
$ sqlite3 -version


マイグレーションの実行
$ ls
bin  lib  myapp
include  manage.py pyvenv.cfg
$ source ./bin/activate
$ python manage.py migrate
$ python3 manage.py migrate
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying auth.0008_alter_user_username_max_length... OK
  Applying sessions.0001_initial... OK


 

◆動作確認

 

スポンサーリンク

■サーバ起動

$ python manage.py runserver
$ python3 manage.py runserver
Performing system checks...

System check identified no issues (0 silenced).

You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.

September 22, 2017 - 15:22:03
Django version 1.11.5, using settings 'myapp.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

 

スポンサーリンク

■動作確認

下記にアクセスします。
http://127.0.0.1:8000/
参考
PythonのWebアプリケーション(Django)を初心者にもわかりやすく解説(1)【環境構築編】 - Qiita
解説記事の構成 No. タイトル 1 PythonのWebアプリケーション(Django)を初心者にもわかりやすく解説(1)【環境構築編】 ← 2 PythonのWebアプリケーション(Django)を初心者...
Pythonの仮想環境構築(2017年版) pyenvとpyenv-virtualenvとvirtualenvとvirtualenvwrapperとpyvenvとvenv - Qiita
追記 2017/01/29 突っ込み記事を書いていただきました。ありがとうございます。 Pythonの仮想環境構築 2017.01版 コメント欄で@shibukawaさんも述べられていますが、virtualenvとv...
django でmanage.pyが動かない|teratail
前提・実現したいことdjangoで新しいプロジェクトを作成しようとしたところ 以下のエラー文が出ました。 いきなりつまずいており困っております。 どなか解決の仕方をおしえてください。 発生している問題・エラーメッセージTraceback (most recent call last): File
ModuleNotFoundError: No module named 'django'というエラーが出ます|teratail
プログラミング初心者です。 djangoの開発環境を構築しようとしていたのですが、python manage.py runserverTraceback (most recent call last):File "ma

 

スポンサーリンク

■次回記事

【Django入門】Mac環境にDjangoを導入する2(アプリケーション作成)

 

スポンサーリンク

参考

【Django入門】Mac環境にDjangoを導入する1(環境構築とプロジェクト作成)
◆対象 Pythonをやりたい! とりあえずメジャーなフレームワークで構築してみよう Djangoで構築 という方の手順を記録してみました。 ■Pythonの動作確認 $ python3 --version Python 3.5.2 動作が確認取れない場合はPy...

コメント

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