Jinja2を導入すれば簡単に国際化できると思ったら大間違いだった。Jinja2と国際化フレームワークのBabelを使うことで、Djangoの国際化機能と同じようなことが実現できる、ということだったらしい。何度か「Kay Frameworkにしときゃ良かったか...」と思った。 苦労したけどどうにかこうにか国際化できたので、方法をメモっておく。ちなみにappengineでJinja2を使う方法については別の記事に書いたのでそちらも良かったらお読みください。 Babelの本サイト(ダウンロードとマニュアル)http://babel.edgewall.org/ Babelの使い方について参考にさせていただいた記事http://d.hatena.ne.jp/nullpobug/20100923/1285251361 下記のような方法をとりました。 BabelとJinja2をインストールBabel
hgwebcommitのi18nでFlask-Babelを使ったのでメモ。 Flask-BabelはFlaskのBabelヘルパー。 Flask-Babel — Flask Babel 1.0 documentation インストール pip install Flask-Babelflaskext.babelを使えるようになる。 Flask-Babelをアプリケーションに適用する applicationからBabelオブジェクトを作る Flaskのインスタンスを引数にしてBabelのインスタンスを作っておく。 babelオブジェクトのデコレータメソッドでlocaleを取得するように書く。 # coding:utf-8 from flask import Flask, g, request from flaskext.babel import Babel app = Flask(__name
生まれ変わった「Days of Liris」。プログラミングのこと、Pythonのこと、気になったソフトウェアのこと、身の回りのこと、いろんなこと。など python界のWebフレームワークと言えばDjangoばかりがもてはやされていますが、僕はFlaskが好きで使っています。いろんなものがgeventベースで動いているので、Djangoは重すぎるのです。さて、国際化についてはTracを作っているところが作っているBabelがありますが、それをFlaskから使いやすくしたものがFlask-Babelです。Flask-Babel関係のメモです。 1. インストール $ pip install Flask-Bable です。インストールの仕方って必要? 2. コマンドを使ってメッセージの抽出とか翻訳とか 次の設定ファイルを作ります。pythonのファイルとjinjaのhtmlテンプレートから翻
Heroku で Pythonが動かせるらしいという情報をいち早くキャッチ(大分遅い) したのでやってみる事にした。Flaskのチュートリアルで作るアプリ「Flaskr」を Heroku + Amazon RDS(MySQL5.5) で動かします。 Heroku標準のPostgresとかの連携手順とかは、既に良くまとまってるブログがあるので、一番最後の参考URL群を参照してください。ここではせっかちな人のために、一気にHerokuアプリと、RDSインスタンスを作るスクリプトを晒しておきます。手順をシェルスクリプト化しただけともいいます。 環境 MacOSX (Lion) での作業を前提としています。 前提 以下のものが使えるようになっている必要があります。 AWS アカウント Heroku アカウント heroku(ruby gems) bash git virtualenv pip rd
Heroku | Cloud Application Platform Django は動いたので、さて Flask と SQLAlchemy です。 github https://github.com/voluntas/heroku-template-flask 環境 Mac OS X Lion でやっているので、Linux や Windows だとまた別だと思います。 必須 Git Python 2.7 heroku Flask をデプロイする準備 最低限必要なのは virtualenv です。 easy_install なり pip で virtualenv が使える環境は作っておきましょう。 とりあえずプロジェクトフォルダを作成 $ mkdir heroku-flask-sqlalchemy $ cd heroku-flask-sqlalchemyvirtualenv 環境をフォル
PythonのマイクロフレームワークFlaskでは JSONを返却するためのメソッドjsonifyが定義されている。 from flask import Flask from flask import jsonify app=Flask(__name__) @app.route('/test.json') def test_json(): return jsonify(res='test') if __name__ == '__main__': app.run() /test.jsonでリクエストすると { res:'test' } という結果が帰ってくる JSONPにしたい場合はjsonifyは使えない。 @app.route('/test.jsonp') def test_jsonp(): import json request.args.get('callback') + '(' +
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く