LoginSignup
4
6

More than 5 years have passed since last update.

40代おっさんの手習いで始めるPython(2018/05/20編)其の壱

Last updated at Posted at 2018-05-20

ずっとVB.NETのレガシーなプログラムを書いてるおっさんではあるが、最近の技術についていくためにも、ひとまずPythonを学びWebアプリをサクッと作れるようにはなっておきたいと考え、その記録をblogに残す事とした。面倒臭いけどこういうの大事かもな、と言う自己満足である

ひとまず以下のサイトを参考にした。そのため、使うテンプレートはjinja2である。
「bottle」+「jinja2」を使ってサイト構築 1

こんな風にフォルダを掘って、準備。
スクリーンショット 2018-05-20 14.08.21.png
実行ファイルが run.py、その他テンプレート定義のファイルとか画像とかはそれぞれのフォルダに格納していくらしい。

ソースコードを読み解いていくと、template('')関数からテンプレートを読み込んだ結果を文字列で返し、それをウェブブラウザにするという構造のようだ

テンプレート設定.png
上記のように置いたファイルを、以下のコードで指定している
ソース指定.png

そう考えられたので、適当にいじり倒してみることにする。

下のように新しくファイルを用意して
スクリーンショット 2018-05-20 14.27.55.png

こいつをコードのガワから開くように変更する。
スクリーンショット 2018-05-20 14.29.46.png

上記のように変更した後実行すると、文言を変更したnext.tplの内容を元にしたページを開けるようになった。テンプレートの指定はこれで良いというのが判る。

テンプレートとしてフォームを設定することも出来る。受け取るためには当然フォームに名前を設定しなければならない。
テンプレート側.png
上にあるようにフォームに設定した name を、
コード側.png
こんな風に request モジュールを使って取得する。formsの後ろにフォームの name に設定した文字列を入れることで文字列が取得できる。

テンプレートに変数を組み込みたかったら、このようにする。
テンプレート変数定義.png
こうした上で、コード側でテンプレートを開くときに以下のように記述すると、テンプレートをブラウザで開く際、指定の変数定義の部分を置き換えてくれる。

コード側の置きかえ実装.png

requestモジュールの使い方に関してはここを参考にあちこち見て回った。

とりあえず、ザックリとした概要、簡単な使い方は理解した。
自宅でもsqlite3モジュールを利用したデータベースを使ったデータ管理も覚えたし、これで少し勝手なWebアプリが開発できそう。

とりあえずメール送信機能を実装した上で、なんかわかりやすくて自分だけ使いそうなアプリを組もう。

まずは一つ賢くなったところで、少し本格的に動くモノを作ってみたい。

4
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
6