動機 PythonにはFlaskというRubyでいうsinatraライクなマイクロフレームワークがあり、こいつのテンプレートエンジンにはJinja2というPHPでいうSmartyライクなテンプレートエンジンが使われている。 で、Flaskでユニットテストを書いていた時に本番環境とテスト用のディレクトリ分けたいと思った。 というのはディレクトリ構造同じにしておいて期待通りのテンプレートがちゃんとレンダリングされてればいいかぐらいのノリだったため。 Jinja2から直接テンプレートディレクトリを指定する ググってもやはり日本語情報は引っかからなかったのと公式ドキュメントとりあえず10分ほど探してみても見つからないということで、とりあえずついったーに投げたら反応あるかもという他力本願全開で投げたらid:shimizukawaさんからレスを頂いた(id:shimizukawaさん情報ありがとうござ
久々にFlaskドキュメントページ見てたら、 Streamingのsnipetが掲載されてました。 (もしかして結構前から?) Werkzeugには0.5から機能としてはあるみたいなんで、 きっと昔からできたんでしょう。 なかなか使い道ないけどTwitterのようなStreamingAPIとかかっこ良いですよね。 つーことでコード。 from flask import Flask from flask import Response import time app = Flask(__file__) @app.route("/streaming") def streaming(): def generate(): while True: time.sleep(1) yield "test\n" return Response(generate(),direct_passthrough=Tr
こんにちは、むさしです。 引き続きflaskでwebアプリを作っていきましょう。 前の記事: playwao.hatenablog.com base.htmlを編集する base.htmlを編集しましょう。 htmlについては僕はあまり詳しくないのでうまく説明できないので自分で調べて貰えばと思います。 また、デザインを楽にするために今回はBootStrapを使います。 getbootstrap.com こちらにアクセスしてbootstrapファイルをstaticフォルダに入れてもいいです。今回は面倒なのでcndを使います。 また、jQueryも使うので同様の方法で導入してください。 jquery.com つまりファイル構造はこういう風になります。 flask_app |---static |---js | |---jquery-2.1.4.min.js | |---bootstrap.mi
前回はファイルを書き込んで閉じてから、また開いてと、かなり気持ち悪かったのですが、 と、修正案を頂いたので、適用してみました。 これで余分な一時ファイルも作られないのですっきり。 StringIO を使うのか!と、また1つ勉強になりました。 V 様に感謝。 # -*- coding: utf-8 -*- import codecs import csv import cStringIO from flask import Flask, Response, make_response, render_template app = Flask(__name__) @app.route("/") def root(): return Response("<a href='/dl/'>DL</a>") @app.route("/dl/") def make_csv(): """ CSV 出力 ""
今日は久しぶりに時間が取れたので、pythonでツイッターの認証ページを作りました。 認証ページというのはこういうやつです。誰もが一度は見たことあると思います。 これをPythonとFlaskとHerokuで実装しました。 デモはこちら!(認証が完了すると、oauth_tokenとoauth_token_secretが表示されます) ツイッター認証デモページ ネット上には、コピペでそのまま認証ページを作れるようなコードはなかなか見当たらなかったので、GitHubにプロジェクトをすべて載せておきます。 github.com Twitter Application Management で callback_urlなどを適切に設定して各コードに書いてある各自設定するの部分を変更してherokuにデプロイすれば動くはずです。(たぶん) 認証出来たら、その oauth_tokenとoauth_to
こんにちは、@yoheiMuneです。 今日は、[Python] 軽量WebフレームワークのFlaskに入門(準備、起動、HTML、静的ファイル、GET、POSTなど)の続きで、FlaskでControllerを分割する方法をブログに書きたいと思います。 目次 Blueprintを用いてコントローラーを複数のファイルに分割する Webアプリケーションが大きくなってくると、リクエストを受け取るコントローラー処理が肥大化してきます。app.pyなどの1ファイルでサーバー起動が気軽にできるFlaskですが、Blueprintを用いることで、コントローラーの処理を分割することができます。 今回は以下のようなファイル構成として話を進めます。 app.py controllers action.py それではここでは、controllers/action.pyに、分割したコントローラーを記載します。B
Flask なんでそこまで大規模ではないですが、 1ファイルでは厳しくなってたので分割しました。 Flask 0.7.2 を使用で、 より大きなアプリケーション ― Flask v0.5.1 documentation http://a2c.bitbucket.org/flask/patterns/packages.html に従って、Module で定義すると、起動時に次のような警告。 (起動はするので動きはする main.py:7: DeprecationWarning: Modules are deprecated. Upgrade to using blueprints. Have a look into the documentation for more information. If this module was registered by a Flask-Extensio
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く