« アニメ 『ゼーガペイン 10th ANNIVERSARY BOX』 | トップページ | IoT with Rainmeter »

2016年9月 8日 (木)

Home Service Webページ完成

近頃は、Webページを書いていた。
はずだが、気付くとJavascriptのデバッグをしていたり、Webサーバの設定を変えていたり、DB接続して値の取得・登録・更新をできるようにしたり、していた。

室内の気温を測定した結果を用いてエアコンのON/OFFを自動制御する仕組みについて、気温と時間の閾値はハードコーディングだったが、これを外部から与えるように変更しようと思いついたのがきっかけだった。
設定内容は大したものではないのでファイルでもよかったのだが、触ったことのないMySQLを使ってみようと思ったのがわりと茨の道となり。
PythonからDB操作を行うこと自体は簡単だったのだが、これを構造化――SQLを渡すと実行してくれたり、参照結果を返してくれる――しようとしたのが難題で、HTML~Javascript~Python~Python~Javascript~HTMLのインターフェイスにとても頭を悩ませることになった。具体的には、JSONデータが文字列なのかオブジェクトなのか、PythonとJavascriptでどう扱うのか、ということである。

機能追加ではあるが、大きな機能に対する小さな機能追加であるので、努力に比して対効果はあまり可視的ではない。つまり、目に見える結果がびみょーなのである。
そんな理由からモチベーションの維持が難しかったのもあるにせよ、Pythonは未経験で、Javascriptは「旧石器時代」に口開けて眺めてたくらいの知識で挑むには、ちょっと難易度高かった。一週間くらいかかってしまった。

自分でWebサーバ立てたのも20年ぶりくらいで、GETとかPOSTとか意識するのも同じくらい。
Apache2の設定でもかなり悩んだ。Options Indexesとか。Digest認証とか。設定を書き換えたのに反映されないのは、違う設定ファイルにデフォルトとして書かれていたもののが邪魔してたからとか。参考例が多く見受けられるものとはまるで違う書式でないとアカンとか。Webでもようよう見つからないTipsが多すぎる。
一通りは解決したので、外部に公開してもいい頃合いだが、自分専用なのと、室外から操作できる必要もないということで見合わせている。

HTMLの記述にはBootstrapというものを利用してみた。久々に書く輩にとってはパズルめいたナニがあり、やっぱりちょっと敷居は高かったが、慣れると便利。画面サイズが異なる機器に自動対応してくれるのはたぶんとてもよいことだ。
とはいえ、セレクトボックスを導入してみたら、そうもいなかくなり、スマホで見た時の画面に合わせるとPCで見たときレイアウトがずれるようなってしまった。

20160908

Webページではなく、RainmeterとかでWindowsのデスクトップから操作できないかどうか画策中。

« アニメ 『ゼーガペイン 10th ANNIVERSARY BOX』 | トップページ | IoT with Rainmeter »

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/542052/64174596

この記事へのトラックバック一覧です: Home Service Webページ完成:

« アニメ 『ゼーガペイン 10th ANNIVERSARY BOX』 | トップページ | IoT with Rainmeter »

フォト
無料ブログはココログ

最近のトラックバック