Django構築【PyCharm・Eclipse】

<strong>・Django</strong>
DjangoとはPythonライブラリのWebアプリケーション開発フレームワークである、Djangoはジャンゴと呼び、これはWebシステムの根幹となるメール配信サービスや写真や動画などのメディアを取り扱うSNSサービスのコンポーネントを提供します。


<strong>・Djangoのメリット</strong>
Djangoは最低限のコーディングでWebフレームワークに必要な機能を実装することができます、データベースのテーブルをModel(モデル)と呼ばれるクラス単位で操作することができためデータベースの選択、削除、更新、追加といった操作をモデル単位で行う事ができます、そのためスキーマに直接触れるといった点においては処理の流れが分かりやすいです。またHtmlの画面遷移をView(ビュー)と呼ばれる関数（クラスでも可能）単位で操作することができます、View単位でレイアウトを管理するといった点においてはレスポンスやリクエストの処理もView単位で行うということになります。ですのでユーザ登録やログイン処理といった機能もView単位で実装されます。以上のことからView自体には複数のPythonライブラリを使用することができます。簡潔にいうとAIモジュールをWebサービスに使用できる、拡張性があるということです。


<strong>・開発環境</strong>
開発環境はPyCharmをおすすめします。DjangoはPythonライブラリのフレームワークであるためeclipseの方でも開発する事は可能ですが、ライブラリの管理とコーディングの品質を高めるといった点においてはPyCharmの方が優れています。またPyCharmでは標準でDjangoの環境を作ってくれますがeclipseの方ではDjangoライブラリのあるPythonを予め準備する必要があります。

<h2>・Djangoの環境構築[PyCharm]</h2>
①まず新しいプロジェクトを作成し、Djangoを選択します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339882/7d8f9367-4040-a157-e221-6d44b20316c0.png)
②Base interpreterを選択し、用意されているPythonをインタプリタに設定します。Pythonがない方は<a href="https://prog-8.com/docs/python-env-win">導入</a>に進んでください。Verは3.7をおすすめします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339882/5b50248d-926b-1f60-052f-c3ccd312e369.png)
③ターミナルでmanage.py runserverを実行し、生成されたURLへアクセスをした際、以下の画面が出力されれば導入完了です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339882/0b1d468c-a416-402e-402e-c4630ed09ccc.png)

<strong>・PyCharmでの注意点</strong>
PyCharmはPythonインタプリタをプロジェクト単位で保存します。そのためBase interpreterとして用いられるPythonにはDjangoはインストールされておりません。そのためDjangoで使用するその他PythonライブラリはPyCharmのTerminalから直接pipする必要があります。またプロジェクトが破損したからといってそのバックアップを新規プロジェクトへ移設したとしてもPythonのモジュールは一から整えてあげる必要があります。それぞれのPythonはプロジェクト単位で管理されるという事を注意しながら開発を取り組んでいきましょう。

<h2>・Djangoの環境構築[eclipse]</h2>
①まずPythonのプラットフォームがある<a href="https://mergedoc.osdn.jp/">eclipse</a>をダウンロードしてください。
②そしてpleiadesの中にあるeclipseを構築（eclipse.exeを実行）します。
③PythonモジュールであるDjangoをpip(ダウンロードおよびにインストール)します。
eclipse標準のpythonだと、python→pythonのバージョン→Scriptのpipを使用します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339882/5645b103-68e2-24c7-0726-64f72fe6299b.png)
④eclipseを立ち上げ、ファイル→新規→その他→PyDevの中にあるPyDev Djangoプロジェクトを選択してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339882/1cf46668-ce05-a040-d40e-37e9443bfdfa.png)
⑤DjangoをインストールしたPythonインタプリタを設定します。まず「リストされていないインタープリターを構成するにはここをクリックしてください。」をクリックします
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339882/bcb8fc92-3dd7-7a3b-5a38-db1a922f675d.png)
⑥右上のBrowse for python/pypy exeでPythonインタプリタを追加します。指定先はそのPythonの中にあるPython.exe本体です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339882/d0a4f6ca-d487-3251-b019-134245cd78da.png)
⑦インタプリタ名を入力して、OKを押したら追加完了です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339882/ca24eb35-ef10-899c-077c-a3a1f361199c.png)
⑧適用して閉じるを押して、プロジェクト作成画面へ戻ります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339882/8a76663e-84c9-cadc-ddae-2e9bae1aa49c.png)
⑨先ほど追加したインタプリタを選択し、以下の画面へ遷移できれば完了してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339882/f32871df-4be3-c5ae-efd0-93a54f3f2311.png)
⑩作成したプロジェクトにカーソルをあわせ、右クリック、実行→PyDev Django
URLが生成され、Djangoの標準画面が出力されれば導入完了です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339882/7d0af79b-324e-38f5-0041-ef65a4df9ff5.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339882/5d47bf71-42d5-fcb4-8c00-4c93e91ba57b.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339882/290e5a5e-5336-fb19-872e-6132048ef2aa.png)




<strong>・eclipseでの注意点</strong>
EclipseへDjangoを構築する際、Pythonインタプリタは一から準備する必要があります。そのためモジュールのインストールをする際もそのPythonインタプリタに付属するpipを介して導入する必要があります。そのためモジュールの管理はPycharmとは異なり自ら管理する必要があります。

<strong>Djangoでのwebアプリケーション開発の注意点</strong>
Djangoはpythonのモジュールであり、われわれが以前から取り扱ってきたpythonのコーディングとは全く異形であることを意識して頂きたい。イメージとしてはDjangoのフレームワークに合わせて部品を埋め込む感覚です。この感覚がつかめないと沼にはまります。そのためDjangoを構成するモジュールに従ったコーディングをしなければなりません。一応Djangoの<a href="https://docs.djangoproject.com/ja/3.1/intro/tutorial01/"><u>チュートリアル</u></a>もありますが、日本のドキュメント情報が少ないといった点においては参考書から入門したほうが個人的にはおすすめです。自分は公式ドキュメントでのコーディングスタイルは令和2年時点を持って古いものだと知り、<a href="https://www.amazon.co.jp/gp/product/4798162507/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&psc=1"><u>動かして学ぶ! Python Django開発入門</u></a>から入門しました。ただDjangoのモジュールの構成管理であれば公式サイトは大いに役立ちます。<font color="red">Djangoを取り扱う上で一番注意しなければならないことはバージョン管理</font>ですのでDjangoのバージョンによっては使用できないモジュール、または仕様に合わせなければならないモジュールが存在する場合があります、そのためPythonインタプリタとDjangoのモジュールのバージョンが適応し合っているかどうかの確認は必須です。Djangoは所詮、Pythonライブラリの一つにすぎません。ただコーディングスタイルはPythonではありません。