ユーザー登録モジュール
TurboGearsのユーザー登録モジュールにregistrationがある。
使い方はいたって簡単。
インストールはsetuptoolsで。
easy_install registration
TurboGearsプロジェクト作成時にregistrationテンプレートを使う。
tg-admin quickstart -i -s -t registration
ちなみにオプションの意味は以下のとおり。
- i
- Identity Management を使う。ようするにTuboGearsのユーザ認証を使う。
- s
- DBアクセスにSQLAlchemyを使う。
- t
- 生成テンプレートを指定する。
作成されたプロジェクトには、registration用の設定ファイルがある。
conf/registration.cfgがそれ。
大半の人(local smtpサーバーを持ってない人)はregistration.mail.smtp_serverにsmtpサーバを設定する必要がある。
smtp認証があるならそれも設定すること。
実際にユーザー登録するには、register_controllersというモジュールを使う。
import register_controllers class Root(controllers.RootController): registration = register_controllers.UserRegistration()
あとは、http://hostname/regsitrationにアクセスすると登録画面になる。
入力し終わると、仮登録されてメールが配信される。
メールの中に書いてあるURLにアクセスすると本登録完了。
ログインするとユーザ情報編集画面になる。
コントローラーはregister_controllersが生成されているので、この中でカスタマイズするということだろう。
画面側もkidテンプレートがあるので、同様にカスタマイズ可能だ。
あと、初期のmodel.pyの内容がちょっと古げ(a1相当か?)なので、色々直す必要があるのかも。
面倒なので、TurboEntityのmodel.pyを拾って上書きして動かした。