PycharmとDjangoを使って素人がWebアプリを作ろう!~前準備~
動機
就活がいよいよ始まるということでインターンにいくつか応募してみました。
ESをつらつらと書いていると、
「学生時代頑張ったことをご記入ください」(例)競技プログラミング優勝
「今までに作った成果物をご記入ください」(例)アプリ制作経験、サーバー運用経験
…………。
そんなのねえ!!!!
ということでWebアプリを作ってみることにしました。
とりあえず研究で使っているので言語はPython。
どうやらDjangoが良いらしいということなのでよくわからないけど取りあえず使ってみます。
Pycharmのインストール
普段研究ではjupyter notebookを使っていたんですが、アプリ制作には不向きということで新しいエディタをインストールします。無料版と有料のProfessional版(月1000円程度)があるらしいんですが、学生は無料で有料版を使えるとのことなので恩恵を授かることに。
JetBrainsの学割の申請方法について
を参考にさせていただきました。やったね!
PycharmのPro版を起動後さっき学割申請したアカウントでログインしたらアカウント認証は完了です。
DjangoをPycharm下で使えるようにする
New Projectを選択することで下記のようなウィンドウが表示されます。
左タブからDjangoを選択して、プロジェクトの名前を設定(今回はQiitaにしました)してからCreateボタンを押してください。仮想環境が構築されます。(無料版だとこの左タブが出ず、「出ねえ…出ねえ……」ってめちゃ嘆いてた)
あとはPycharmが勝手にDjangoをインストールしてくれるので任せます。
次にFileタブからSettingsを選択し、Languages&Frameworks下にあるDjangoを選択。
一番上のEnable Django supportにチェックを入れて適用させます。
これで準備は整いました。
ファイルを確認してみる
メインメニューに戻ってディレクトリ構造を確認してみると、
└── qiita
├── manage.py
└── qiita
├── __init__.py
├── settings.py
├── urls.py
└── wsgi.py
のようになっていました。
それぞれのファイルの詳しい意味はよく分からないのでおいおい勉強していきたいのですが、このqiita下のqiitaディレクトリがこのプロジェクトの”核”となる部分みたいです。また、manage.pyに対してコマンドを送ることでアプリとなるそうです。
アプリを作ろう!!!
全く何も分かってはいないですがとりあえず手を動かしてみます。
Toolsタブから「Run manage.py Task」を選択すると、manage.pyに対して命令を送るモードになります。
>startapp <アプリ名>
というコマンドでWebアプリを作るためのディレクトリが生成されます。
今回は「app」という名前にしました。
この時点でディレクトリ構造は下記のようになっているかと思います。
qiita
├── manage.py
├── qiita
│ ├── __init__.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
└── app
├── __init__.py
├── admin.py
├── apps.py
├── migrations
│ └── __init__.py
├── models.py
├── tests.py
└── views.py
settings.pyを編集する。
最後に行ってほしい作業がひとつ。
settings.pyのINSTALLED_APPSに先ほど作成したアプリ名のタグを追加してください。
なんでかは分からないです。
疲れたので今回はここまでにします。
Author And Source
この問題について(PycharmとDjangoを使って素人がWebアプリを作ろう!~前準備~), 我々は、より多くの情報をここで見つけました https://qiita.com/nankotukozou/items/11f5e76a11ee97027c4a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .