Ability to display debug messages (with debug.message('Hello')).

portnov [2008-06-08 08:24:39]
Ability to display debug messages (with debug.message('Hello')).
Filename
mgmt/context.py
mgmt/debug.py
mgmt/views.py
templates/base.html
diff --git a/mgmt/context.py b/mgmt/context.py
index fd7b0d7..2e30d7b 100644
--- a/mgmt/context.py
+++ b/mgmt/context.py
@@ -1,8 +1,13 @@
 #encoding: utf-8

+import sys
+from os.path import dirname
 import re

+sys.path.append(dirname(dirname(__file__)))
+import settings
 from hms import hms
+import debug

 show_blocks = dict(
     testblk = dict(),
@@ -32,3 +37,10 @@ def add_blocks(request):
   else:
     log_msg = u'Вы не вошли.'
   return dict(blocks=blocks,login_message=log_msg)
+
+def debug_messages(request):
+  if settings.DEBUG:
+    return dict(debug = debug.dump())
+  else:
+    return dict(debug = "")
+
diff --git a/mgmt/debug.py b/mgmt/debug.py
new file mode 100644
index 0000000..1ddf816
--- /dev/null
+++ b/mgmt/debug.py
@@ -0,0 +1,13 @@
+
+messages = []
+
+def message(str):
+  global messages
+  messages.append(str)
+
+def dump():
+  if messages:
+    m = ["<p>%s</p>" % msg for msg in messages]
+    return "<div class='debug'>\n" + '\n'.join(m) + "\n</div>\n"
+  else:
+    return ""
diff --git a/mgmt/views.py b/mgmt/views.py
index a2e8b5f..6e4b109 100644
--- a/mgmt/views.py
+++ b/mgmt/views.py
@@ -10,10 +10,10 @@ from django.shortcuts import render_to_response
 import django.newforms as forms

 from models import *
-from context import add_blocks
+from context import add_blocks,debug_messages

 def render_it(template,dict,request):
-  c = RequestContext(request,dict,[add_blocks])
+  c = RequestContext(request,dict,[add_blocks,debug_messages])
   t = get_template(template)
   return HttpResponse(t.render(c))

diff --git a/templates/base.html b/templates/base.html
index 7ce7761..07ec506 100644
--- a/templates/base.html
+++ b/templates/base.html
@@ -30,7 +30,9 @@
     </div>

     <div id='footer'>
-      {% block footer %}{% endblock %}
+      {% block footer %}
+        {{debug}}
+      {% endblock %}
     </div>
   </div>
ViewGit