Pylons

0.9.6 RC1

Pylonsの0.9.6が近いうちにでるらしいです。 最近の動向を追っていなかったので経緯は分からないのですが、pylons.databaseがdeprecatedになるという点に目がいきました。 pylons.database is deprecated, its not going away quite yet, but we highly enco…

Makoを使う

PylonsでMakoを使ってみます。現在のところのPylons標準のテンプレートエンジンMyghtyと、Makoの関係はよく分からないものがありますが(作者が同じ)、Makoの方が開発が活発のようなので、Pylonsの標準テンプレートエンジンもMakoに切り替わっていくのだと思…

Blogを作る(7)表示関連の修正

本文にmarkdown記法を使う 本文に、何らかのマークアップ記法(reST, markdown, textile, hatena)が使えないと寂しいので、これを改善します。 Pylonsをインストールすると、webhelpers.markdown, webhelpers.textileというモジュールも同時にインストールさ…

Blogを作る(6)AuthKitを使った認証処理

誰でも投稿でき、削除できるようでは、Blogとは言えないので、最低限の認証機能を組み込みたいと思います。 Pylonsでの認証処理には、AuthKitというライブラリを使用します。以下のチュートリアルを参考にしました。 Pylons Wiki内のAuthKitについてのドキュ…

Blogを作る(5)記事の削除

記事の削除を行えるようにします。 削除の実装 blogcontroller/controllers/entries.pyのEntiresControllerのdeleteメソッドを実装します。 def delete(self, id): """DELETE /id: Delete an existing item.""" # Forms posted to this method should contai…

Blogを作る(4)記事の投稿・編集

記事の投稿、編集を行えるようにします。 入力値の検証 入力値の検証には、FormEncodeのSchemaの派生クラスを使います。まず、記事(Post)の検証に使う、PostSchemaクラスを定義します。 # -*- coding: utf-8 -*- from formencode import validators from for…

Pylonsのトレースバックは凄い!

PylonsのTracebackは凄いです。例外発生時のスタックフレームに対して、ブラウザ経由!で対話的にデバッグを行うことができます。DjangoのTracebackも親切だと思いましたが、Pylonsには及びません。 実例を紹介します。RSSフィードを返すアクションの実装中…

Blogを作る(3) 記事の一覧・詳細

記事の一覧、詳細を表示するところまで作ります。【追記】 出力時のHTMLエスケープ処理がなかったので、テンプレートを修正しました。以下、言い訳。Pylonsの公式のチュートリアルで勉強しながら書いているのですが、公式のドキュメントで出力エスケープにつ…

Blogを作る(2)データベースの設定

前回の続きです。 データベースの設定 続いて、データベースの設定を行います。まず、BlogTutorial/development.iniを編集し、データベースの接続先を設定します。 development.iniを開くと、コメントアウトされているsqlalchemy.dburiという設定があるので…

Blogを作る(1)プロジェクトを作る

Pylonsは、TurboGears, Djangoに次ぐ*1Python Webアプリケーション・フレームワークで、オーソドックスなMVCアーキテクチャと、優れたWSGIユーティリティ・ライブラリであるPasteを使用している点に特徴があります。 インストール インストールはCheese shop…