Django + Nitros.io を使ってみる その3
Django + Nitros.io を使ってみる その3
さてダニエルなかぢさんの講座も最終章です。
必要なのはブラウザだけ。Python使ったWebサービス構築(処理を書いてみよう編) - 今日学んだこと
毎度使うコマンドメモ
workspaceへ移動
cd workspace
venvを起動
source venv/bin/activate
サーバの起動
python manage.py runserver 0.0.0.0:8080
HTMLテンプレートファイルのform要素をPOSTメソッドに変更
さて、チュートリアルを進めます。
まずはHTMLテンプレートファイルのform要素をPOSTメソッドに変更
ここでエラーがでるはず。
でた!
いやー、でると分かるエラーは気持ちがいいです。
そこで、form要素内に以下の構文を追加
{% csrf_token %}
そして、サーバーを再起動して確認
エラーーーー!!!
HTMLを確認してみると、先ほどの構文が追加されていない。。
(ここからは初心者のつぶやき。。)
実はDjangoを理解していないため、
先日からこのエラーが良く出る。
ファイルを変更して保存するだけでは、Djang自体で更新されないのか?
python manage.py migrate
このmigarate
っていうのも気になってしかたない。
おまじないとして使っているのだが、これがなにか更新してくれているのかな??
???
分からないのでちょっと待ってみる。。。
(1分)
なにもしてないのにエラーがなくなった!
HTMLファイル内に先ほどの項目が追加されています。
時間をまてば更新されるってことは、nitrous.ioの方の更新待ちなのかな?
次回からは少し待つことにします。
さて、チュートリアルに戻ります。
入力フォームからリクエストを受け取る
views.pyに以下の構文を追加
if request.method = 'POST':
print(request.REQUEST['niku'])
恐る恐る開くと
エラーー!
んーーーー
良く見ると。。。
if request.method = 'POST'
if
文の条件分岐の構文でイコールが一つしかないじゃない=
正確には==
こちら
if request.method == 'POST':
print(request.REQUEST['niku'])
初心者ミスでした。
こう、なにがなんだかわからないことを、
チュートリアルを参考にしているときは、
自分の手順がミスなのか、このような構文ミスなのか分からなく
パニックになってしまいますね。。
さて気を取り直して
ふぃふぃを食べたいというと。
できましたー!
コンソールにふぃふぃ
と入力された文字が返ってきています。
さあ次はDBを作ります。
まとめ
記事を描きながら、ダニエルなかぢさんのチュートリアルをそのまま載せては全く意味がないと思いながら進めていたのですが、この記事を描きながら、僕のような初心者はエラーにはまってしまい断念してしまう人もいるかもしれないので、
僕はエラー共有版として進めていこうと思います。