このコンテンツには閲覧パスワードが必要です。
【WEBサイトを作ろう】#2 PythonAnywhereでWEBサイト制作 2
Python環境を使ったWEBサイトを無料で構築できるPythonAnywhereを使って、シンプルなブログサイトなどを作っていきたいと思います。
https://www.pythonanywhere.com
前回は、Djangoのインストールをしてスタートアップページを表示させるところまで行きました。
今回はブログサイトのトップページを表示させること、また、管理者用のページであるadminサイトを使えるようにしていきたいと思います。
0 Djangoの設定ファイルを編集す
以下のページを参考に設定をしていきます。
https://medium.com/@kjmczk/django-settings-c29eb629223
1 アプリケーションをつくる
Koji Mochizuki氏のブログサイトの作り方をそのまま作成していきたいと思います。
https://medium.com/p/747046b453f9#43d8
(1)Blog アプリケーションを作成する
pythonanywhereのBash consoleに入りましょう。前回チュートリアルで作成した「django2」という名前の仮想環境から抜け出ていたら、
workon django2
と入力して仮想環境に入り直します。そしたら、こちらも前回チュートリアルで作成した「mysite」という名前のディレクトリに移動します。
cd mysite
そこまでたどりついたら、以下のコマンドを入力して「blog」という名前のアプリケーションを作成します。
python manage.py startapp blog
チュートリアルとKoji Mochizuki氏のサイトの説明では、プロジェクト名が異なるので同じ状態ではありませんが、pythonanywhere上で、「blog」というディレクトリが作成されているかと思います。
後は、Koji Mochizuki氏のサイトに従って作業していきます。
私もよく説明が理解できてない箇所がありますので、マインドマップに落とし込みながら作業しています。
最初は、完成形がはやく見たいと思うので、ひととおりコピペしてブログサイトを完成させてから、2周目にノートを取っていくのもありでしょう。
テンプレートに部活名を書いてトップページに表示させるところまで行きました。
(2)adminサイトを使う
ブログの記事を書いたりするため用のadminサイト(管理サイト)をカスタマイズしていきます。
Koji Mochizuki氏のブログサイトの作り方の「#3 adminサイトを使う」をやっていきます。
記事のとおり、管理ユーザを作成しようと以下のコマンドを実行したら、
python manage.py createsuperuser
次のようなエラーがでました。
You have 19 unapplied migration(s). Your project may not work properly until you apply the migrations
for app(s): admin, auth, blog, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
指示どおり'python manage.py migrate' を実行したら先に進めました。
無事adminサイトにログインができたのですが、Koji Mochizuki氏の記事に記載のある「admin サイトに入りました!Category、Tag、Postもしっかり登録されています。」とあるのに、当方のadminサイトには表示されてませんでした。
テンプレートのHTMLやCSS以外は、PythonAnywhereの「Web」タブの中にある「Reload」ボタンを押さないと反映されないといことをすっかり忘れており、リロードしたら、きちんと表示されました。
ブログサイトのカテゴリにはこの部活の7つのカテゴリを設定しておきます。
(1)で説明したトップページと(2)のadminサイトの画面を貼り付けておきます。