■概要
最近Djangoでシステム構築するとどうなるかと思いいろいろ試行錯誤中。FlaskのFlushと同様のことDjangoで・・
■環境
Django[1.6.4]■注意点
公式ドキュメントに記載されているsettings.pyの設定はstartappでほぼ入っていました。■python/django/views.py
from django.contrib import messages
from django.shortcuts import render_to_response, RequestContext
# ...
def some_view(request):
messages.set_level(request, messages.DEBUG)
# ...
messages.debug(request, '%s SQL statements were executed.' % count)
messages.info(request, 'Three credits remain in your account.')
messages.success(request, 'Profile details updated.')
messages.warning(request, 'Your account expires in three days.')
messages.error(request, 'Document deleted.')
# ...
return render_to_response('my_template.html',
my_data_dictionary,
context_instance=RequestContext(request))
1行目:messageのimport2行目:RequestContextが必要
5行目:set_levelで利用可能なメッセージタグのレベルを設定。デフォルトはinfoのようです。(ここで詰まった)
7~11行目:それぞれのメッセージのテスト
15行目:requestをcontext_instanceに渡してやる必要あり。
■html
{% if messages %}
{% endif %}
4行目:タグの情報をそのまま、classに渡すと楽ですね。■備考
以下の識別がしっくりきたのでメモDEBUG:
開発用のメッセージ、本番環境では無視される(または削除される)
INFO:
ユーザーに対して情報を伝えるためのメッセージ
SUCCESS:
アクションが成功した、例) “あなたのプロフィールの更新が成功しました”
WARNING:
失敗ではないが、その危険性がある
ERROR:
アクションが成功していないか、何かの失敗がある
■参考
http://docs.djangoproject.jp/en/latest/ref/contrib/messages.htmlhttp://www.18th-technote.com/post/5386511650/django
0 件のコメント :
コメントを投稿