まいこーmemog

生きづらいとき人の言葉で生き返るので,自分も言葉にしてみる.[memo+blog]

【Django初心者】プロジェクトをつくる

Djangoでプロジェクトを作る際の操作手順をまとめておく.
Udemyで学習した内容をまとめるので,適宜gitにコミットする部分も入れる.

スケッチを描く.

さぁ,プログラミングするぞ!
と意気込むとまずパソコンを開き,続いてエディタを開き...
そんな癖がついていた.

プロジェクトで何か作ろうとする際は,この癖は封印しよう.
まずは紙と鉛筆を持つ.
もちろん,iPadProとApplePencilでも良いので,僕は後者を選ぶ.

作りたいサイトの構想図を,幼稚園のお絵かきの時間のように描く.
f:id:maikocho:20181111215144p:plain

(かなり適当に描いたけど,こんな感じ.)

プロジェクト置き場とプロジェクト本体を作る

ここからパソコンのスイッチを入れる.
まずはvirtualenvでプロジェクト用の環境を作る.
terminalを立ち上げ,プロジェクトを作るディレクトリで以下のコマンドを実行する.

$ virtualenv myvenv

myvenvの部分は好きな名前で良い.

この環境を使えるようにするには,以下のコマンドを実行する.

$ source myvenv/bin/activate

こちらも同様,myvenvのところは自分のつけた名前にする.
これをするとプロンプト($の手前の部分)に環境名が入る.

(myvenv) user@PC_name$

もちろんmyvenvは自分がつけたn...
しつこいのでやめておく.

さて,肝心のプロジェクトを作ろう.
Djangoを環境内にインストールするので以下のコマンドを実行する.

$ pip install django==version

pipはPythonに付属するパッケージ管理ツールだ.
versionは指定しなければ,最新版がインストールされると思う.
指定しない場合は,「==version」を取れば良い.

次にdjangoコマンドで新しいプロジェクトを作る.

$ django-admin startproject projectname

(projectnameは,今回はportfolioとしたとして話を進める.)

このコマンドで,プロジェクト用のディレクトリと必要最低限の中身が作成される.
cdコマンドでプロジェクトのディレクトリに移動しておこう.

$ cd portfolio/

gitにcommitする

新しいプロジェクトを作ったので,gitを利用してバージョン管理をする.
gitはプロジェクト作成クエストに,セーブポイントを作ってくれる.
ギャルゲーで分岐前にセーブをためていくのと同じことだ.*1

まずは,このディレクトリをgitでコード管理しますよーという宣言をする.

$ git init

ちなみに現在のディレクトリは,プロジェクトのディレクトリだ.
この宣言により,あとは状態を確認したり,実際にコミットするだけだが,
その前にgitignoreというファイルを作っておこう.

プロジェクトディレクトリ直下で良いので
「.gitignore」
という名前でファイルを作る.

このファイル内に書かれたファイルやディレクトリは,gitに監視されないので,
機密情報だったりなんだったりを扱うものは,ここに書いておく.
しかし,初学者にこれは無理難題だ.

そこで,
www.gitignore.io
このサイトを利用する.

ここでDjangoと検索して,出てきた内容をコピペしよう.
これで,gitを利用する前の準備は完了だ.
一応次のコマンドで,未アップのファイルがあるか調べてみよう.

$ git status

これでファイルが出れば,コミットすればいい.
次の2つのコマンドを実行しよう.

$ git add -A
$ git commit -m "comment"

commentの部分は,セーブポイントの名前だ.
最初だったら

$ git commit -m "My first commit\!"

のようにすればいい.
\は!を通すための記号である.
そのまま!と打っても通らないは,やってみるとわかる.

仮想環境から抜ける

以上でプロジェクトを作成して,git管理を始めるところまではできた.
内容はこれからだ.

作業を終了するときは,virtualenvの作る作業用環境から抜けておこう.
次のコマンドで元に戻れる.

$ deactivate

プロンプトの前の,( )の部分が消えたら成功だ.
terminalを消すときはexitコマンドを叩いておこう.
シェルの終了コマンドだが,忘れてもどうにもなたことがないので
現代のパソコンにとっては,おまじないだと思っている.

$ exit

まとめ

Djangoでプロジェクトを作る手順を確認した.
vertualenvやgitやと色んなツールが出てきて,ややこしく感じるが,
必要性や発想の根拠はわかるので,とりあえずそんなところの理解でいいかなと思っている.

プログラミングを始める際の,環境構築の初学者殺し感は本当にどうにかしてほしい...

Udemyで勉強中のコースはこちらで紹介.

maikocho.hatenablog.com

*1:ちなみにギャルゲーはアニメの中でみたことしかない.