寝る前にちょっとWeb作成のための勉強をしていました。
- mysqlの使い方
授業でSQLは何度もさわったことがあるので簡単。ただ、設定はちょっと面倒だったけど、いろいろ試すため家のVMware上にも環境を構築しました。でも、ubuntuなのでapt-getでmysqldbとpython-mysqldbをゲットするだけ。makeからのインストールがどれだけ面倒なのかしりませんが、今時、apt-getかrpm以外でインストールするやつって、逆にかなりの上級者なので心配ないのでは?
- web.pyのインストール、チュートリアル
これはインストールは直下におくだけなので、簡単なのだがレンタルサーバの設定がちょっとめんどいらしい。web.pyはすべてのアクセスをcgiにいったん、リダイレクトする仕様なので、そのように設定しなければならない(と、、、思う)。そのへんはこのへんを参照。
- CGI環境でweb.pyを動かす
http://d.hatena.ne.jp/y_yanbe/20060311
もし、自サーバでやるならアパッチでcgiの設定してあとは起動するだけ。そのurlにアクセスすれば勝手にうごいてます。
- で、web.py雑感
なんか、ふつうにcgiを書いてるのと同じ感覚。ようはその人がPythonが使えることが大前提。PloneとかのPython使えなくてもそこそこできるものとは違います。ただ、おれはそういうなにしてるのかわかるのが欲しかったので満足。しかし、チュートリアルを見た限りではDBのサポートが弱いのでは、、、ふつうにmysqlのリクエストを送っているだけですよね。。。ORマッパーはどうした?(ないみたいなので、おとなしくSQLObjectをつかいましょう。)
- web.py チュートリアル
http://kinneko.googlepages.com/webpy_tutorial_ja
というわけで、web.pyではURLの操作、テンプレートの機能を利用し、DBはSQLObject、RSSはfeedparserを使うことになりそうです。かなり無難っぽい選択かな。
- そんなわけでローカルで動いたのでさっそくレンタルサーバで
と思ったら、ものすごいところでこけます。import threadでこけました。このレンタルサーバはマルチスレッドを禁止にしているわけじゃなくて、pythonでthreadモジュールを消しているのね、、、これは萎えるね。web.pyソースコードを手直ししようと思って、みてみたらかなり根本的な部分で使っているみたいなので、これはちょっとレンタルサーバでやるのは無理めかな、、、。どうすんべ。
- 結局
自分のマシンでローカルで開発し、コンテストに応募するときはあちらのサーバを借りようかと思います。なんか面倒な感じもするけど、しょうがないか。というわけで、次のお勉強は、SQLObjectの使い方でしょう。でも、これも標準のORラッパーと同じような感じなので、したのURLのチュートリアルをひととおりやればいいかと思います。
- SQLObject 0.7
http://www.python.jp/~ymasuda/sqlobject/SQLObject.html
そしたら、いよいよ実装開始です。