#はじめに
Linux(Ubuntu)でのDjangoの環境構築からプロジェクト作成までをまとめました。
Djangoを勉強し始めたのはつい先日で、使ったコマンドからアウトプットとして記録していきたいなぁと思います。
また、今回の記事は以下の参考サイトに書かれていることを簡易的にまとめたものですので、詳しく知りたい方はそちらの方をご覧ください。
#参考
#仮想環境(virtual environment)の作成
###ディレクトリの作成
$ mkdir (作成するディレクトリの名前)
$ cd (作成したディレクトリの名前)
###仮想環境の作成
$ python -m venv myvenv
myvenvは仮想環境の名前は以下の条件を守ればどんな名前でも作成可能
- 必ず小文字で表記する
- スペースは入れないこと
ここで作成した名前は今後多く使うことになるからわかりやすいものにしといたほうがいいかも?
###仮想環境を起動
$ source myvenv/bin/activate
source
でできない場合もあるからその時は以下のコマンドを実行
$ . myvenv/bin/activate
行頭に(myvenv)がついたら成功!
#Djangoのインストール
###Djangoのインストールに使うソフトウェアpipの確認
(myvenv) ~$ python -m pip install --upgrade pip
###パッケージのインストール
requirementsファイルでパッケージをインストールする。
requirementsはpip install
でインストールする依存関係の一覧が記載されているファイル
requirements.txt
を(作成したディレクトリ)の中に作成する
requirements.txt
中に以下のテキストを記述
Django~=2.2.4
###Djangoのインストール
以下のコマンドを実行してDjangoをインストールする
(myvenv) ~$ pip install -r requirements.txt
これでDjangoの環境構築が完了!
#Djangoのプロジェクト作成
下記のコマンドでプロジェクトが作成可能
$ django-admin startproject <プロジェクト名> <作成するディレクトリ>
(プロジェクト名)には()を外した状態で好きなものを入れる
一般的に、(作成したディレクトリ)の名前をいれるらしい
作成するディレクトリは省略可能で.
にすることでカレントディレクトリの直下に展開できる。
###現在のファイル構造
(作成したディレクトリ)
├── myvenv
├── (プロジェクト名)
│ ├── __init__.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── requirements.txt
└── manage.py
ここまでできてたらもう少し...
###各ファイルの説明
(プロジェクト名)の中に入っているファイルの説明をします。
4つのファイルが作成されているはず...
__init__.py
Pythonにディレクトリを認識させる為のファイル
settings.py
Djangoのプロジェクトに関わる設定を記述したもの
urls.py
URLの設定が記述されたもの
wsgi.py
サーバーに関する設定が記述されたもの
そのほかにも
manage.py
サイトの管理に役立つものでこのファイルを利用することで他のものをインストールすることなく、Webサーバーを起動することができる
###開発用サーバーの起動
以下のコマンドで開発用サーバーを起動できる
(myvenv)~/<作成したディレクトリ名>$ python manage.py runserver
You have 17 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.
上記のようなエラーが出ると思いますが一旦無視して大丈夫です。
ブラウザでhttps://127.0.0.1:8000/ にアクセスする
ロケットが飛んでいる画面が出たら無事にプロジェクトが作成できてます!
#さいごに
自分は最近勉強を始めたばかりの初心者なので間違えている所があったらご指摘していただけたらこちらも勉強になるのでありがたいです。
また、はじめの方にも書きましたが参考にしたサイトの内容を簡易的にまとめた記事なので
これからDjangoを勉強しようとしている方やより詳しいことを知りたい方は参考サイトをご覧ください。
また、アウトプットとしていろいろ書いていきたいなと思います。
今回はご覧いただきありがとうございました。