2013年9月23日月曜日

GAE/Djanigo で、メールとキャッシュを使う

Django には、メール送信や、キャッシュを使う仕組みがありますが、GAE(GoogleAppEngine)で、これを使うには、どうすれば良いのだろう??

GAE のサービスに、メールとキャッシュのAPIはあるので、このAPIを直接使うしかないのか??

と、調べてみると、良いものを見つけました。

django-gae-backends


1.使い方

1-1.プログラムの配置

ダウンロードして、ここに置きました。

mysite/
├mysite/
│ └settings.py
└gae_backends/
 ├__init.py__
 ├mail.py
 └memcache.py

1-2.設定

settings.py に、以下を追加。

-- settings.py --

EMAIL_BACKEND = 'gae_backends.mail.EmailBackend'
SERVER_EMAIL = '<Gmailのメールアドレス>'

ADMINS = (
 ('<管理者の名前>', '<管理者のメールアドレス>'),
)

CACHES = {
 'default': {
  'BACKEND': 'gae_backends.memcache.MemcacheCache',
 }
}

MIDDLEWARE_CLASSES = (
 'django.middleware.cache.UpdateCacheMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.cache.FetchFromCacheMiddleware',
)

LOGGING = {
 デフォルトのままでOK

--

1-3.メール送信

エラーが発生すると、管理者宛にメールが送信されます。

プログラム内で使う場合は、マニュアルを読んで下さい。

1-4.キャッシュ

UpdateCacheMiddleware と FetchFromCacheMiddleware によって、サイト単位のキャッシュが有効になっています。