Code

Changes between Initial Version and Version 1 of Ticket #8774


Ignore:
Timestamp:
09/01/08 15:07:06 (6 years ago)
Author:
jacob
Comment:

Cleared out impossible-to-read traceback.

ramin, there's a "switch to copy-paste view" button in the error page; please us it and post the readable message!

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #8774

    • Property Patch needs improvement unset
    • Property Needs tests unset
    • Property Needs documentation unset
  • Ticket #8774 – Description

    initial v1  
    11When trying to edit a model that has another model inlined in the admin the following error occurs. This doesn't occur when creating a new instance. The error was first sighted from an SVN version on Friday 28.8.2008 and is still present in rev 8814. 
    22 
    3  
    4 Template error 
    5  
    6 In template /usr/lib/python2.5/site-packages/django/contrib/admin/templates/admin/edit_inline/tabular.html, error at line 24 
    7 Caught an exception while rendering: coercing to Unicode: need string or buffer, ImageFieldFile found 
    8 14      {% endfor %} 
    9 15      {% if inline_admin_formset.formset.can_delete %}<th>{% trans "Delete?" %}</th>{% endif %} 
    10 16      </tr></thead> 
    11 17       
    12 18      {% for inline_admin_form in inline_admin_formset %} 
    13 19       
    14 20      <tr class="{% cycle row1,row2 %} {% if inline_admin_form.original or inline_admin_form.show_url %}has_original{% endif %}"> 
    15 21       
    16 22      <td class="original"> 
    17 23      {% if inline_admin_form.original or inline_admin_form.show_url %}<p> 
    18 24      {% if inline_admin_form.original %} {{ inline_admin_form.original }}{% endif %} 
    19 25      {% if inline_admin_form.show_url %}<a href="../../../r/{{ inline_admin_form.original.content_type_id }}/{{ inline_admin_form.original.id }}/">{% trans "View on site" %}</a>{% endif %} 
    20 26      </p>{% endif %} 
    21 27      {{ inline_admin_form.pk_field.field }} 
    22 28      {% spaceless %} 
    23 29      {% for fieldset in inline_admin_form %} 
    24 30      {% for line in fieldset %} 
    25 31      {% for field in line %} 
    26 32      {% if field.is_hidden %} {{ field.field }} {% endif %} 
    27 33      {% endfor %} 
    28 34      {% endfor %} 
    29 Traceback Switch to copy-and-paste view 
    30  
    31     * /usr/lib/python2.5/site-packages/django/core/handlers/base.py in get_response 
    32         79. # Apply view middleware 
    33         80. for middleware_method in self._view_middleware: 
    34         81. response = middleware_method(request, callback, callback_args, callback_kwargs) 
    35         82. if response: 
    36         83. return response 
    37         84. 
    38         85. try: 
    39         86. response = callback(request, *callback_args, **callback_kwargs) ... 
    40         87. except Exception, e: 
    41         88. # If the view raised an exception, run it through exception 
    42         89. # middleware, and if the exception middleware returns a 
    43         90. # response, use that. Otherwise, reraise the exception. 
    44         91. for middleware_method in self._exception_middleware: 
    45         92. response = middleware_method(request, e) 
    46       ▶ Local vars 
    47       Variable  Value 
    48       callback   
    49       <bound method AdminSite.root of <django.contrib.admin.sites.AdminSite object at 0x84d58ac>> 
    50       callback_args      
    51       (u'blogengine/entry/7792/',) 
    52       callback_kwargs    
    53       {} 
    54       e          
    55       TemplateSyntaxError(u'Caught an exception while rendering: coercing to Unicode: need string or buffer, ImageFieldFile found',) 
    56       exc_info   
    57       (<class 'django.template.TemplateSyntaxError'>, TemplateSyntaxError(u'Caught an exception while rendering: coercing to Unicode: need string or buffer, ImageFieldFile found',), <traceback object at 0x88a389c>) 
    58       exceptions         
    59       <module 'django.core.exceptions' from '/usr/lib/python2.5/site-packages/django/core/exceptions.pyc'> 
    60       middleware_method          
    61       <bound method XViewMiddleware.process_view of <django.middleware.doc.XViewMiddleware object at 0x863cdac>> 
    62       receivers          
    63       [(<function _rollback_on_exception at 0x83c080c>, None)] 
    64       request    
    65       <WSGIRequest GET:<QueryDict: {}>, POST:<QueryDict: {}>, COOKIES:{'loj': '813779e21550f0ec85afab540dcaaead'}, META:{'COLORTERM': 'gnome-terminal', 'CONTENT_LENGTH': '', 'CONTENT_TYPE': 'text/plain', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-JScisqaUty,guid=a44545a8bb30caddf309679148bc008f', 'DESKTOP_SESSION': 'default', 'DISPLAY': ':0.0', 'DJANGO_SETTINGS_MODULE': 'lifeofjalo.settings', 'GATEWAY_INTERFACE': 'CGI/1.1', 'GDMSESSION': 'default', 'GDM_LANG': 'en_US.UTF-8', 'GDM_XSERVER_LOCATION': 'local', 'GNOME_DESKTOP_SESSION_ID': 'Default', 'GNOME_KEYRING_PID': '11923', 'GNOME_KEYRING_SOCKET': '/tmp/keyring-aOeKUS/socket', 'GPG_AGENT_INFO': '/tmp/seahorse-ZM5CqE/S.gpg-agent:12030:1', 'GTK_RC_FILES': '/etc/gtk/gtkrc:/home/ramin/.gtkrc-1.2-gnome2', 'HISTCONTROL': 'ignoreboth', 'HOME': '/home/ramin', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'loj=813779e21550f0ec85afab540dcaaead', 'HTTP_HOST': 'localhost:8000', 'HTTP_KEEP_ALIVE': '300', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008072820 Firefox/3.0.1', 'LANG': 'en_US.UTF-8', 'LESSCLOSE': '/usr/bin/lesspipe %s %s', 'LESSOPEN': '| /usr/bin/lesspipe %s', 'LIBGL_DRIVERS_PATH': '/usr/lib/dri', 'LOGNAME': 'ramin', 'LS_COLORS': 'no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.svgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:', 'PATH': '/home/ramin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games', 'PATH_INFO': u'/admin/blogengine/entry/7792/', 'PWD': '/home/ramin/devel/lifeofjalo', 'PYTHONPATH': ':/home/ramin/devel/python', 'QUERY_STRING': '', 'REMOTE_ADDR': '127.0.0.1', 'REMOTE_HOST': '', 'REQUEST_METHOD': 'GET', 'RUN_MAIN': 'true', 'SCRIPT_NAME': u'', 'SERVER_NAME': 'shaftoe.home.fierymill.net', 'SERVER_PORT': '8000', 'SERVER_PROTOCOL': 'HTTP/1.1', 'SERVER_SOFTWARE': 'WSGIServer/0.1 Python/2.5.2', 'SESSION_MANAGER': 'local/shaftoe:/tmp/.ICE-unix/11924', 'SHELL': '/bin/bash', 'SHLVL': '1', 'SSH_AUTH_SOCK': '/tmp/keyring-aOeKUS/ssh', 'TERM': 'xterm', 'TZ': 'Europe/Helsinki', 'USER': 'ramin', 'USERNAME': 'ramin', 'WINDOWID': '31457663', 'WINDOWPATH': '7:7', 'XAUTHORITY': '/tmp/.gdm5V5MGU', 'XDG_DATA_DIRS': '/usr/local/share/:/usr/share/:/usr/share/gdm/', 'XDG_SESSION_COOKIE': '2da2e590671719852a41670046d7eae7-1220280461.811025-1645281592', '_': '/usr/bin/python', 'wsgi.errors': <open file '<stderr>', mode 'w' at 0xb7d150b0>, 'wsgi.file_wrapper': <class 'django.core.servers.basehttp.FileWrapper'>, 'wsgi.input': <socket._fileobject object at 0x87ac1b4>, 'wsgi.multiprocess': False, 'wsgi.multithread': True, 'wsgi.run_once': False, 'wsgi.url_scheme': 'http', 'wsgi.version': (1, 0)}> 
    66       resolver   
    67       <RegexURLResolver lifeofjalo.urls ^/> 
    68       response   
    69       None 
    70       self       
    71       <django.core.handlers.wsgi.WSGIHandler object at 0x855f68c> 
    72       settings   
    73       <django.conf.LazySettings object at 0xb7c67f8c> 
    74       urlconf    
    75       'lifeofjalo.urls' 
    76       urlresolvers       
    77       <module 'django.core.urlresolvers' from '/usr/lib/python2.5/site-packages/django/core/urlresolvers.pyc'> 
    78     * /usr/lib/python2.5/site-packages/django/contrib/admin/sites.py in root 
    79        166. return self.i18n_javascript(request) 
    80        167. # urls starting with 'r/' are for the "show in web" links 
    81        168. elif url.startswith('r/'): 
    82        169. from django.views.defaults import shortcut 
    83        170. return shortcut(request, *url.split('/')[1:]) 
    84        171. else: 
    85        172. if '/' in url: 
    86        173. return self.model_page(request, *url.split('/', 2)) ... 
    87        174. else: 
    88        175. return self.app_index(request, url) 
    89        176. 
    90        177. raise http.Http404('The requested admin page does not exist.') 
    91        178. 
    92        179. def model_page(self, request, app_label, model_name, rest_of_url=None): 
    93       ▶ Local vars 
    94       Variable  Value 
    95       request    
    96       <WSGIRequest GET:<QueryDict: {}>, POST:<QueryDict: {}>, COOKIES:{'loj': '813779e21550f0ec85afab540dcaaead'}, META:{'COLORTERM': 'gnome-terminal', 'CONTENT_LENGTH': '', 'CONTENT_TYPE': 'text/plain', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-JScisqaUty,guid=a44545a8bb30caddf309679148bc008f', 'DESKTOP_SESSION': 'default', 'DISPLAY': ':0.0', 'DJANGO_SETTINGS_MODULE': 'lifeofjalo.settings', 'GATEWAY_INTERFACE': 'CGI/1.1', 'GDMSESSION': 'default', 'GDM_LANG': 'en_US.UTF-8', 'GDM_XSERVER_LOCATION': 'local', 'GNOME_DESKTOP_SESSION_ID': 'Default', 'GNOME_KEYRING_PID': '11923', 'GNOME_KEYRING_SOCKET': '/tmp/keyring-aOeKUS/socket', 'GPG_AGENT_INFO': '/tmp/seahorse-ZM5CqE/S.gpg-agent:12030:1', 'GTK_RC_FILES': '/etc/gtk/gtkrc:/home/ramin/.gtkrc-1.2-gnome2', 'HISTCONTROL': 'ignoreboth', 'HOME': '/home/ramin', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'loj=813779e21550f0ec85afab540dcaaead', 'HTTP_HOST': 'localhost:8000', 'HTTP_KEEP_ALIVE': '300', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008072820 Firefox/3.0.1', 'LANG': 'en_US.UTF-8', 'LESSCLOSE': '/usr/bin/lesspipe %s %s', 'LESSOPEN': '| /usr/bin/lesspipe %s', 'LIBGL_DRIVERS_PATH': '/usr/lib/dri', 'LOGNAME': 'ramin', 'LS_COLORS': 'no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.svgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:', 'PATH': '/home/ramin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games', 'PATH_INFO': u'/admin/blogengine/entry/7792/', 'PWD': '/home/ramin/devel/lifeofjalo', 'PYTHONPATH': ':/home/ramin/devel/python', 'QUERY_STRING': '', 'REMOTE_ADDR': '127.0.0.1', 'REMOTE_HOST': '', 'REQUEST_METHOD': 'GET', 'RUN_MAIN': 'true', 'SCRIPT_NAME': u'', 'SERVER_NAME': 'shaftoe.home.fierymill.net', 'SERVER_PORT': '8000', 'SERVER_PROTOCOL': 'HTTP/1.1', 'SERVER_SOFTWARE': 'WSGIServer/0.1 Python/2.5.2', 'SESSION_MANAGER': 'local/shaftoe:/tmp/.ICE-unix/11924', 'SHELL': '/bin/bash', 'SHLVL': '1', 'SSH_AUTH_SOCK': '/tmp/keyring-aOeKUS/ssh', 'TERM': 'xterm', 'TZ': 'Europe/Helsinki', 'USER': 'ramin', 'USERNAME': 'ramin', 'WINDOWID': '31457663', 'WINDOWPATH': '7:7', 'XAUTHORITY': '/tmp/.gdm5V5MGU', 'XDG_DATA_DIRS': '/usr/local/share/:/usr/share/:/usr/share/gdm/', 'XDG_SESSION_COOKIE': '2da2e590671719852a41670046d7eae7-1220280461.811025-1645281592', '_': '/usr/bin/python', 'wsgi.errors': <open file '<stderr>', mode 'w' at 0xb7d150b0>, 'wsgi.file_wrapper': <class 'django.core.servers.basehttp.FileWrapper'>, 'wsgi.input': <socket._fileobject object at 0x87ac1b4>, 'wsgi.multiprocess': False, 'wsgi.multithread': True, 'wsgi.run_once': False, 'wsgi.url_scheme': 'http', 'wsgi.version': (1, 0)}> 
    97       self       
    98       <django.contrib.admin.sites.AdminSite object at 0x84d58ac> 
    99       url        
    100       u'blogengine/entry/7792' 
    101     * /usr/lib/python2.5/site-packages/django/views/decorators/cache.py in _wrapped_view_func 
    102         37. 
    103         38. def never_cache(view_func): 
    104         39. """ 
    105         40. Decorator that adds headers to a response so that it will 
    106         41. never be cached. 
    107         42. """ 
    108         43. def _wrapped_view_func(request, *args, **kwargs): 
    109         44. response = view_func(request, *args, **kwargs) ... 
    110         45. add_never_cache_headers(response) 
    111         46. return response 
    112         47. return wraps(view_func)(_wrapped_view_func) 
    113       ▶ Local vars 
    114       Variable  Value 
    115       args       
    116       (<WSGIRequest GET:<QueryDict: {}>, POST:<QueryDict: {}>, COOKIES:{'loj': '813779e21550f0ec85afab540dcaaead'}, META:{'COLORTERM': 'gnome-terminal', 'CONTENT_LENGTH': '', 'CONTENT_TYPE': 'text/plain', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-JScisqaUty,guid=a44545a8bb30caddf309679148bc008f', 'DESKTOP_SESSION': 'default', 'DISPLAY': ':0.0', 'DJANGO_SETTINGS_MODULE': 'lifeofjalo.settings', 'GATEWAY_INTERFACE': 'CGI/1.1', 'GDMSESSION': 'default', 'GDM_LANG': 'en_US.UTF-8', 'GDM_XSERVER_LOCATION': 'local', 'GNOME_DESKTOP_SESSION_ID': 'Default', 'GNOME_KEYRING_PID': '11923', 'GNOME_KEYRING_SOCKET': '/tmp/keyring-aOeKUS/socket', 'GPG_AGENT_INFO': '/tmp/seahorse-ZM5CqE/S.gpg-agent:12030:1', 'GTK_RC_FILES': '/etc/gtk/gtkrc:/home/ramin/.gtkrc-1.2-gnome2', 'HISTCONTROL': 'ignoreboth', 'HOME': '/home/ramin', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'loj=813779e21550f0ec85afab540dcaaead', 'HTTP_HOST': 'localhost:8000', 'HTTP_KEEP_ALIVE': '300', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008072820 Firefox/3.0.1', 'LANG': 'en_US.UTF-8', 'LESSCLOSE': '/usr/bin/lesspipe %s %s', 'LESSOPEN': '| /usr/bin/lesspipe %s', 'LIBGL_DRIVERS_PATH': '/usr/lib/dri', 'LOGNAME': 'ramin', 'LS_COLORS': 'no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.svgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:', 'PATH': '/home/ramin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games', 'PATH_INFO': u'/admin/blogengine/entry/7792/', 'PWD': '/home/ramin/devel/lifeofjalo', 'PYTHONPATH': ':/home/ramin/devel/python', 'QUERY_STRING': '', 'REMOTE_ADDR': '127.0.0.1', 'REMOTE_HOST': '', 'REQUEST_METHOD': 'GET', 'RUN_MAIN': 'true', 'SCRIPT_NAME': u'', 'SERVER_NAME': 'shaftoe.home.fierymill.net', 'SERVER_PORT': '8000', 'SERVER_PROTOCOL': 'HTTP/1.1', 'SERVER_SOFTWARE': 'WSGIServer/0.1 Python/2.5.2', 'SESSION_MANAGER': 'local/shaftoe:/tmp/.ICE-unix/11924', 'SHELL': '/bin/bash', 'SHLVL': '1', 'SSH_AUTH_SOCK': '/tmp/keyring-aOeKUS/ssh', 'TERM': 'xterm', 'TZ': 'Europe/Helsinki', 'USER': 'ramin', 'USERNAME': 'ramin', 'WINDOWID': '31457663', 'WINDOWPATH': '7:7', 'XAUTHORITY': '/tmp/.gdm5V5MGU', 'XDG_DATA_DIRS': '/usr/local/share/:/usr/share/:/usr/share/gdm/', 'XDG_SESSION_COOKIE': '2da2e590671719852a41670046d7eae7-1220280461.811025-1645281592', '_': '/usr/bin/python', 'wsgi.errors': <open file '<stderr>', mode 'w' at 0xb7d150b0>, 'wsgi.file_wrapper': <class 'django.core.servers.basehttp.FileWrapper'>, 'wsgi.input': <socket._fileobject object at 0x87ac1b4>, 'wsgi.multiprocess': False, 'wsgi.multithread': True, 'wsgi.run_once': False, 'wsgi.url_scheme': 'http', 'wsgi.version': (1, 0)}>, u'blogengine', u'entry', u'7792') 
    117       kwargs     
    118       {} 
    119       request    
    120       <django.contrib.admin.sites.AdminSite object at 0x84d58ac> 
    121       view_func          
    122       <function model_page at 0x84d809c> 
    123     * /usr/lib/python2.5/site-packages/django/contrib/admin/sites.py in model_page 
    124        185. model = models.get_model(app_label, model_name) 
    125        186. if model is None: 
    126        187. raise http.Http404("App %r, model %r, not found." % (app_label, model_name)) 
    127        188. try: 
    128        189. admin_obj = self._registry[model] 
    129        190. except KeyError: 
    130        191. raise http.Http404("This model exists but has not been registered with the admin site.") 
    131        192. return admin_obj(request, rest_of_url) ... 
    132        193. model_page = never_cache(model_page) 
    133        194. 
    134        195. def password_change(self, request): 
    135        196. """ 
    136        197. Handles the "change password" task -- both form display and validation. 
    137        198. """ 
    138       ▶ Local vars 
    139       Variable  Value 
    140       admin_obj          
    141       <lifeofjalo.blogengine.admin.EntryAdmin object at 0x86b94ac> 
    142       app_label          
    143       u'blogengine' 
    144       model      
    145       <class 'lifeofjalo.blogengine.models.Entry'> 
    146       model_name         
    147       u'entry' 
    148       models     
    149       <module 'django.db.models' from '/usr/lib/python2.5/site-packages/django/db/models/__init__.pyc'> 
    150       request    
    151       <WSGIRequest GET:<QueryDict: {}>, POST:<QueryDict: {}>, COOKIES:{'loj': '813779e21550f0ec85afab540dcaaead'}, META:{'COLORTERM': 'gnome-terminal', 'CONTENT_LENGTH': '', 'CONTENT_TYPE': 'text/plain', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-JScisqaUty,guid=a44545a8bb30caddf309679148bc008f', 'DESKTOP_SESSION': 'default', 'DISPLAY': ':0.0', 'DJANGO_SETTINGS_MODULE': 'lifeofjalo.settings', 'GATEWAY_INTERFACE': 'CGI/1.1', 'GDMSESSION': 'default', 'GDM_LANG': 'en_US.UTF-8', 'GDM_XSERVER_LOCATION': 'local', 'GNOME_DESKTOP_SESSION_ID': 'Default', 'GNOME_KEYRING_PID': '11923', 'GNOME_KEYRING_SOCKET': '/tmp/keyring-aOeKUS/socket', 'GPG_AGENT_INFO': '/tmp/seahorse-ZM5CqE/S.gpg-agent:12030:1', 'GTK_RC_FILES': '/etc/gtk/gtkrc:/home/ramin/.gtkrc-1.2-gnome2', 'HISTCONTROL': 'ignoreboth', 'HOME': '/home/ramin', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'loj=813779e21550f0ec85afab540dcaaead', 'HTTP_HOST': 'localhost:8000', 'HTTP_KEEP_ALIVE': '300', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008072820 Firefox/3.0.1', 'LANG': 'en_US.UTF-8', 'LESSCLOSE': '/usr/bin/lesspipe %s %s', 'LESSOPEN': '| /usr/bin/lesspipe %s', 'LIBGL_DRIVERS_PATH': '/usr/lib/dri', 'LOGNAME': 'ramin', 'LS_COLORS': 'no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.svgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:', 'PATH': '/home/ramin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games', 'PATH_INFO': u'/admin/blogengine/entry/7792/', 'PWD': '/home/ramin/devel/lifeofjalo', 'PYTHONPATH': ':/home/ramin/devel/python', 'QUERY_STRING': '', 'REMOTE_ADDR': '127.0.0.1', 'REMOTE_HOST': '', 'REQUEST_METHOD': 'GET', 'RUN_MAIN': 'true', 'SCRIPT_NAME': u'', 'SERVER_NAME': 'shaftoe.home.fierymill.net', 'SERVER_PORT': '8000', 'SERVER_PROTOCOL': 'HTTP/1.1', 'SERVER_SOFTWARE': 'WSGIServer/0.1 Python/2.5.2', 'SESSION_MANAGER': 'local/shaftoe:/tmp/.ICE-unix/11924', 'SHELL': '/bin/bash', 'SHLVL': '1', 'SSH_AUTH_SOCK': '/tmp/keyring-aOeKUS/ssh', 'TERM': 'xterm', 'TZ': 'Europe/Helsinki', 'USER': 'ramin', 'USERNAME': 'ramin', 'WINDOWID': '31457663', 'WINDOWPATH': '7:7', 'XAUTHORITY': '/tmp/.gdm5V5MGU', 'XDG_DATA_DIRS': '/usr/local/share/:/usr/share/:/usr/share/gdm/', 'XDG_SESSION_COOKIE': '2da2e590671719852a41670046d7eae7-1220280461.811025-1645281592', '_': '/usr/bin/python', 'wsgi.errors': <open file '<stderr>', mode 'w' at 0xb7d150b0>, 'wsgi.file_wrapper': <class 'django.core.servers.basehttp.FileWrapper'>, 'wsgi.input': <socket._fileobject object at 0x87ac1b4>, 'wsgi.multiprocess': False, 'wsgi.multithread': True, 'wsgi.run_once': False, 'wsgi.url_scheme': 'http', 'wsgi.version': (1, 0)}> 
    152       rest_of_url        
    153       u'7792' 
    154       self       
    155       <django.contrib.admin.sites.AdminSite object at 0x84d58ac> 
    156     * /usr/lib/python2.5/site-packages/django/contrib/admin/options.py in __call__ 
    157        189. elif url == "add": 
    158        190. return self.add_view(request) 
    159        191. elif url.endswith('/history'): 
    160        192. return self.history_view(request, unquote(url[:-8])) 
    161        193. elif url.endswith('/delete'): 
    162        194. return self.delete_view(request, unquote(url[:-7])) 
    163        195. else: 
    164        196. return self.change_view(request, unquote(url)) ... 
    165        197. 
    166        198. def _media(self): 
    167        199. from django.conf import settings 
    168        200. 
    169        201. js = ['js/core.js', 'js/admin/RelatedObjectLookups.js'] 
    170        202. if self.prepopulated_fields: 
    171       ▶ Local vars 
    172       Variable  Value 
    173       request    
    174       <WSGIRequest GET:<QueryDict: {}>, POST:<QueryDict: {}>, COOKIES:{'loj': '813779e21550f0ec85afab540dcaaead'}, META:{'COLORTERM': 'gnome-terminal', 'CONTENT_LENGTH': '', 'CONTENT_TYPE': 'text/plain', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-JScisqaUty,guid=a44545a8bb30caddf309679148bc008f', 'DESKTOP_SESSION': 'default', 'DISPLAY': ':0.0', 'DJANGO_SETTINGS_MODULE': 'lifeofjalo.settings', 'GATEWAY_INTERFACE': 'CGI/1.1', 'GDMSESSION': 'default', 'GDM_LANG': 'en_US.UTF-8', 'GDM_XSERVER_LOCATION': 'local', 'GNOME_DESKTOP_SESSION_ID': 'Default', 'GNOME_KEYRING_PID': '11923', 'GNOME_KEYRING_SOCKET': '/tmp/keyring-aOeKUS/socket', 'GPG_AGENT_INFO': '/tmp/seahorse-ZM5CqE/S.gpg-agent:12030:1', 'GTK_RC_FILES': '/etc/gtk/gtkrc:/home/ramin/.gtkrc-1.2-gnome2', 'HISTCONTROL': 'ignoreboth', 'HOME': '/home/ramin', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'loj=813779e21550f0ec85afab540dcaaead', 'HTTP_HOST': 'localhost:8000', 'HTTP_KEEP_ALIVE': '300', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008072820 Firefox/3.0.1', 'LANG': 'en_US.UTF-8', 'LESSCLOSE': '/usr/bin/lesspipe %s %s', 'LESSOPEN': '| /usr/bin/lesspipe %s', 'LIBGL_DRIVERS_PATH': '/usr/lib/dri', 'LOGNAME': 'ramin', 'LS_COLORS': 'no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.svgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:', 'PATH': '/home/ramin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games', 'PATH_INFO': u'/admin/blogengine/entry/7792/', 'PWD': '/home/ramin/devel/lifeofjalo', 'PYTHONPATH': ':/home/ramin/devel/python', 'QUERY_STRING': '', 'REMOTE_ADDR': '127.0.0.1', 'REMOTE_HOST': '', 'REQUEST_METHOD': 'GET', 'RUN_MAIN': 'true', 'SCRIPT_NAME': u'', 'SERVER_NAME': 'shaftoe.home.fierymill.net', 'SERVER_PORT': '8000', 'SERVER_PROTOCOL': 'HTTP/1.1', 'SERVER_SOFTWARE': 'WSGIServer/0.1 Python/2.5.2', 'SESSION_MANAGER': 'local/shaftoe:/tmp/.ICE-unix/11924', 'SHELL': '/bin/bash', 'SHLVL': '1', 'SSH_AUTH_SOCK': '/tmp/keyring-aOeKUS/ssh', 'TERM': 'xterm', 'TZ': 'Europe/Helsinki', 'USER': 'ramin', 'USERNAME': 'ramin', 'WINDOWID': '31457663', 'WINDOWPATH': '7:7', 'XAUTHORITY': '/tmp/.gdm5V5MGU', 'XDG_DATA_DIRS': '/usr/local/share/:/usr/share/:/usr/share/gdm/', 'XDG_SESSION_COOKIE': '2da2e590671719852a41670046d7eae7-1220280461.811025-1645281592', '_': '/usr/bin/python', 'wsgi.errors': <open file '<stderr>', mode 'w' at 0xb7d150b0>, 'wsgi.file_wrapper': <class 'django.core.servers.basehttp.FileWrapper'>, 'wsgi.input': <socket._fileobject object at 0x87ac1b4>, 'wsgi.multiprocess': False, 'wsgi.multithread': True, 'wsgi.run_once': False, 'wsgi.url_scheme': 'http', 'wsgi.version': (1, 0)}> 
    175       self       
    176       <lifeofjalo.blogengine.admin.EntryAdmin object at 0x86b94ac> 
    177       url        
    178       u'7792' 
    179     * /usr/lib/python2.5/site-packages/django/db/transaction.py in _commit_on_success 
    180        231. control in web apps. 
    181        232. """ 
    182        233. def _commit_on_success(*args, **kw): 
    183        234. try: 
    184        235. enter_transaction_management() 
    185        236. managed(True) 
    186        237. try: 
    187        238. res = func(*args, **kw) ... 
    188        239. except: 
    189        240. # All exceptions must be handled here (even string ones). 
    190        241. if is_dirty(): 
    191        242. rollback() 
    192        243. raise 
    193        244. else: 
    194       ▶ Local vars 
    195       Variable  Value 
    196       args       
    197       (<lifeofjalo.blogengine.admin.EntryAdmin object at 0x86b94ac>, <WSGIRequest GET:<QueryDict: {}>, POST:<QueryDict: {}>, COOKIES:{'loj': '813779e21550f0ec85afab540dcaaead'}, META:{'COLORTERM': 'gnome-terminal', 'CONTENT_LENGTH': '', 'CONTENT_TYPE': 'text/plain', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-JScisqaUty,guid=a44545a8bb30caddf309679148bc008f', 'DESKTOP_SESSION': 'default', 'DISPLAY': ':0.0', 'DJANGO_SETTINGS_MODULE': 'lifeofjalo.settings', 'GATEWAY_INTERFACE': 'CGI/1.1', 'GDMSESSION': 'default', 'GDM_LANG': 'en_US.UTF-8', 'GDM_XSERVER_LOCATION': 'local', 'GNOME_DESKTOP_SESSION_ID': 'Default', 'GNOME_KEYRING_PID': '11923', 'GNOME_KEYRING_SOCKET': '/tmp/keyring-aOeKUS/socket', 'GPG_AGENT_INFO': '/tmp/seahorse-ZM5CqE/S.gpg-agent:12030:1', 'GTK_RC_FILES': '/etc/gtk/gtkrc:/home/ramin/.gtkrc-1.2-gnome2', 'HISTCONTROL': 'ignoreboth', 'HOME': '/home/ramin', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'loj=813779e21550f0ec85afab540dcaaead', 'HTTP_HOST': 'localhost:8000', 'HTTP_KEEP_ALIVE': '300', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008072820 Firefox/3.0.1', 'LANG': 'en_US.UTF-8', 'LESSCLOSE': '/usr/bin/lesspipe %s %s', 'LESSOPEN': '| /usr/bin/lesspipe %s', 'LIBGL_DRIVERS_PATH': '/usr/lib/dri', 'LOGNAME': 'ramin', 'LS_COLORS': 'no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.svgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:', 'PATH': '/home/ramin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games', 'PATH_INFO': u'/admin/blogengine/entry/7792/', 'PWD': '/home/ramin/devel/lifeofjalo', 'PYTHONPATH': ':/home/ramin/devel/python', 'QUERY_STRING': '', 'REMOTE_ADDR': '127.0.0.1', 'REMOTE_HOST': '', 'REQUEST_METHOD': 'GET', 'RUN_MAIN': 'true', 'SCRIPT_NAME': u'', 'SERVER_NAME': 'shaftoe.home.fierymill.net', 'SERVER_PORT': '8000', 'SERVER_PROTOCOL': 'HTTP/1.1', 'SERVER_SOFTWARE': 'WSGIServer/0.1 Python/2.5.2', 'SESSION_MANAGER': 'local/shaftoe:/tmp/.ICE-unix/11924', 'SHELL': '/bin/bash', 'SHLVL': '1', 'SSH_AUTH_SOCK': '/tmp/keyring-aOeKUS/ssh', 'TERM': 'xterm', 'TZ': 'Europe/Helsinki', 'USER': 'ramin', 'USERNAME': 'ramin', 'WINDOWID': '31457663', 'WINDOWPATH': '7:7', 'XAUTHORITY': '/tmp/.gdm5V5MGU', 'XDG_DATA_DIRS': '/usr/local/share/:/usr/share/:/usr/share/gdm/', 'XDG_SESSION_COOKIE': '2da2e590671719852a41670046d7eae7-1220280461.811025-1645281592', '_': '/usr/bin/python', 'wsgi.errors': <open file '<stderr>', mode 'w' at 0xb7d150b0>, 'wsgi.file_wrapper': <class 'django.core.servers.basehttp.FileWrapper'>, 'wsgi.input': <socket._fileobject object at 0x87ac1b4>, 'wsgi.multiprocess': False, 'wsgi.multithread': True, 'wsgi.run_once': False, 'wsgi.url_scheme': 'http', 'wsgi.version': (1, 0)}>, u'7792') 
    198       func       
    199       <function change_view at 0x84ae924> 
    200       kw         
    201       {} 
    202     * /usr/lib/python2.5/site-packages/django/contrib/admin/options.py in change_view 
    203        613. 'media': mark_safe(media), 
    204        614. 'inline_admin_formsets': inline_admin_formsets, 
    205        615. 'errors': helpers.AdminErrorList(form, formsets), 
    206        616. 'root_path': self.admin_site.root_path, 
    207        617. 'app_label': app_label, 
    208        618. } 
    209        619. context.update(extra_context or {}) 
    210        620. return self.render_change_form(request, context, change=True, obj=obj) ... 
    211        621. change_view = transaction.commit_on_success(change_view) 
    212        622. 
    213        623. def changelist_view(self, request, extra_context=None): 
    214        624. "The 'change list' admin view for this model." 
    215        625. from django.contrib.admin.views.main import ChangeList, ERROR_FLAG 
    216        626. opts = self.model._meta 
    217       ▶ Local vars 
    218       Variable  Value 
    219       FormSet    
    220       <class 'django.forms.formsets.ImageFormFormSet'> 
    221       ModelForm          
    222       <class 'django.forms.models.EntryForm'> 
    223       adminForm          
    224       <django.contrib.admin.helpers.AdminForm object at 0x873e22c> 
    225       app_label          
    226       'blogengine' 
    227       context    
    228       {'add': False, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'app_label': 'blogengine', 'change': True, 'content_type_id': 9L, 'errors': [], 'form_url': '', 'has_absolute_url': False, 'has_add_permission': True, 'has_change_permission': True, 'has_delete_permission': True, 'has_file_field': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'object_id': u'7792', 'opts': <Options for Entry>, 'ordered_objects': [], 'original': <Entry: 2008-08-09 00:00:00>, 'root_path': u'/admin/', 'save_as': False, 'save_on_top': False, 'title': u'Change entry'} 
    229       extra_context      
    230       None 
    231       fieldsets          
    232       [(None, {'fields': ['file', 'caption', 'captionFI']})] 
    233       form       
    234       <django.forms.models.EntryForm object at 0x873e5ec> 
    235       formset    
    236       <django.forms.formsets.ImageFormFormSet object at 0x8741d6c> 
    237       formsets   
    238       [<django.forms.formsets.ImageFormFormSet object at 0x8741d6c>] 
    239       inline     
    240       <lifeofjalo.blogengine.admin.ImageInline object at 0x86b948c> 
    241       inline_admin_formset       
    242       <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c> 
    243       inline_admin_formsets      
    244       [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>] 
    245       media      
    246       <django.forms.widgets.Media object at 0x87f8e4c> 
    247       model      
    248       <class 'lifeofjalo.blogengine.models.Entry'> 
    249       obj        
    250       <Entry: 2008-08-09 00:00:00> 
    251       object_id          
    252       u'7792' 
    253       opts       
    254       <Options for Entry> 
    255       request    
    256       <WSGIRequest GET:<QueryDict: {}>, POST:<QueryDict: {}>, COOKIES:{'loj': '813779e21550f0ec85afab540dcaaead'}, META:{'COLORTERM': 'gnome-terminal', 'CONTENT_LENGTH': '', 'CONTENT_TYPE': 'text/plain', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-JScisqaUty,guid=a44545a8bb30caddf309679148bc008f', 'DESKTOP_SESSION': 'default', 'DISPLAY': ':0.0', 'DJANGO_SETTINGS_MODULE': 'lifeofjalo.settings', 'GATEWAY_INTERFACE': 'CGI/1.1', 'GDMSESSION': 'default', 'GDM_LANG': 'en_US.UTF-8', 'GDM_XSERVER_LOCATION': 'local', 'GNOME_DESKTOP_SESSION_ID': 'Default', 'GNOME_KEYRING_PID': '11923', 'GNOME_KEYRING_SOCKET': '/tmp/keyring-aOeKUS/socket', 'GPG_AGENT_INFO': '/tmp/seahorse-ZM5CqE/S.gpg-agent:12030:1', 'GTK_RC_FILES': '/etc/gtk/gtkrc:/home/ramin/.gtkrc-1.2-gnome2', 'HISTCONTROL': 'ignoreboth', 'HOME': '/home/ramin', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'loj=813779e21550f0ec85afab540dcaaead', 'HTTP_HOST': 'localhost:8000', 'HTTP_KEEP_ALIVE': '300', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008072820 Firefox/3.0.1', 'LANG': 'en_US.UTF-8', 'LESSCLOSE': '/usr/bin/lesspipe %s %s', 'LESSOPEN': '| /usr/bin/lesspipe %s', 'LIBGL_DRIVERS_PATH': '/usr/lib/dri', 'LOGNAME': 'ramin', 'LS_COLORS': 'no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.svgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:', 'PATH': '/home/ramin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games', 'PATH_INFO': u'/admin/blogengine/entry/7792/', 'PWD': '/home/ramin/devel/lifeofjalo', 'PYTHONPATH': ':/home/ramin/devel/python', 'QUERY_STRING': '', 'REMOTE_ADDR': '127.0.0.1', 'REMOTE_HOST': '', 'REQUEST_METHOD': 'GET', 'RUN_MAIN': 'true', 'SCRIPT_NAME': u'', 'SERVER_NAME': 'shaftoe.home.fierymill.net', 'SERVER_PORT': '8000', 'SERVER_PROTOCOL': 'HTTP/1.1', 'SERVER_SOFTWARE': 'WSGIServer/0.1 Python/2.5.2', 'SESSION_MANAGER': 'local/shaftoe:/tmp/.ICE-unix/11924', 'SHELL': '/bin/bash', 'SHLVL': '1', 'SSH_AUTH_SOCK': '/tmp/keyring-aOeKUS/ssh', 'TERM': 'xterm', 'TZ': 'Europe/Helsinki', 'USER': 'ramin', 'USERNAME': 'ramin', 'WINDOWID': '31457663', 'WINDOWPATH': '7:7', 'XAUTHORITY': '/tmp/.gdm5V5MGU', 'XDG_DATA_DIRS': '/usr/local/share/:/usr/share/:/usr/share/gdm/', 'XDG_SESSION_COOKIE': '2da2e590671719852a41670046d7eae7-1220280461.811025-1645281592', '_': '/usr/bin/python', 'wsgi.errors': <open file '<stderr>', mode 'w' at 0xb7d150b0>, 'wsgi.file_wrapper': <class 'django.core.servers.basehttp.FileWrapper'>, 'wsgi.input': <socket._fileobject object at 0x87ac1b4>, 'wsgi.multiprocess': False, 'wsgi.multithread': True, 'wsgi.run_once': False, 'wsgi.url_scheme': 'http', 'wsgi.version': (1, 0)}> 
    257       self       
    258       <lifeofjalo.blogengine.admin.EntryAdmin object at 0x86b94ac> 
    259     * /usr/lib/python2.5/site-packages/django/contrib/admin/options.py in render_change_form 
    260        395. 'save_on_top': self.save_on_top, 
    261        396. 'root_path': self.admin_site.root_path, 
    262        397. }) 
    263        398. return render_to_response(self.change_form_template or [ 
    264        399. "admin/%s/%s/change_form.html" % (app_label, opts.object_name.lower()), 
    265        400. "admin/%s/change_form.html" % app_label, 
    266        401. "admin/change_form.html" 
    267        402. ], context, context_instance=template.RequestContext(request)) ... 
    268        403. 
    269        404. def response_add(self, request, obj, post_url_continue='../%s/'): 
    270        405. """ 
    271        406. Determines the HttpResponse for the add_view stage. 
    272        407. """ 
    273        408. opts = obj._meta 
    274       ▶ Local vars 
    275       Variable  Value 
    276       add        
    277       False 
    278       app_label          
    279       'blogengine' 
    280       change     
    281       True 
    282       context    
    283       {'add': False, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'app_label': 'blogengine', 'change': True, 'content_type_id': 9L, 'errors': [], 'form_url': '', 'has_absolute_url': False, 'has_add_permission': True, 'has_change_permission': True, 'has_delete_permission': True, 'has_file_field': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'object_id': u'7792', 'opts': <Options for Entry>, 'ordered_objects': [], 'original': <Entry: 2008-08-09 00:00:00>, 'root_path': u'/admin/', 'save_as': False, 'save_on_top': False, 'title': u'Change entry'} 
    284       form_url   
    285       '' 
    286       obj        
    287       <Entry: 2008-08-09 00:00:00> 
    288       opts       
    289       <Options for Entry> 
    290       ordered_objects    
    291       [] 
    292       request    
    293       <WSGIRequest GET:<QueryDict: {}>, POST:<QueryDict: {}>, COOKIES:{'loj': '813779e21550f0ec85afab540dcaaead'}, META:{'COLORTERM': 'gnome-terminal', 'CONTENT_LENGTH': '', 'CONTENT_TYPE': 'text/plain', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-JScisqaUty,guid=a44545a8bb30caddf309679148bc008f', 'DESKTOP_SESSION': 'default', 'DISPLAY': ':0.0', 'DJANGO_SETTINGS_MODULE': 'lifeofjalo.settings', 'GATEWAY_INTERFACE': 'CGI/1.1', 'GDMSESSION': 'default', 'GDM_LANG': 'en_US.UTF-8', 'GDM_XSERVER_LOCATION': 'local', 'GNOME_DESKTOP_SESSION_ID': 'Default', 'GNOME_KEYRING_PID': '11923', 'GNOME_KEYRING_SOCKET': '/tmp/keyring-aOeKUS/socket', 'GPG_AGENT_INFO': '/tmp/seahorse-ZM5CqE/S.gpg-agent:12030:1', 'GTK_RC_FILES': '/etc/gtk/gtkrc:/home/ramin/.gtkrc-1.2-gnome2', 'HISTCONTROL': 'ignoreboth', 'HOME': '/home/ramin', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'loj=813779e21550f0ec85afab540dcaaead', 'HTTP_HOST': 'localhost:8000', 'HTTP_KEEP_ALIVE': '300', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008072820 Firefox/3.0.1', 'LANG': 'en_US.UTF-8', 'LESSCLOSE': '/usr/bin/lesspipe %s %s', 'LESSOPEN': '| /usr/bin/lesspipe %s', 'LIBGL_DRIVERS_PATH': '/usr/lib/dri', 'LOGNAME': 'ramin', 'LS_COLORS': 'no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.svgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:', 'PATH': '/home/ramin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games', 'PATH_INFO': u'/admin/blogengine/entry/7792/', 'PWD': '/home/ramin/devel/lifeofjalo', 'PYTHONPATH': ':/home/ramin/devel/python', 'QUERY_STRING': '', 'REMOTE_ADDR': '127.0.0.1', 'REMOTE_HOST': '', 'REQUEST_METHOD': 'GET', 'RUN_MAIN': 'true', 'SCRIPT_NAME': u'', 'SERVER_NAME': 'shaftoe.home.fierymill.net', 'SERVER_PORT': '8000', 'SERVER_PROTOCOL': 'HTTP/1.1', 'SERVER_SOFTWARE': 'WSGIServer/0.1 Python/2.5.2', 'SESSION_MANAGER': 'local/shaftoe:/tmp/.ICE-unix/11924', 'SHELL': '/bin/bash', 'SHLVL': '1', 'SSH_AUTH_SOCK': '/tmp/keyring-aOeKUS/ssh', 'TERM': 'xterm', 'TZ': 'Europe/Helsinki', 'USER': 'ramin', 'USERNAME': 'ramin', 'WINDOWID': '31457663', 'WINDOWPATH': '7:7', 'XAUTHORITY': '/tmp/.gdm5V5MGU', 'XDG_DATA_DIRS': '/usr/local/share/:/usr/share/:/usr/share/gdm/', 'XDG_SESSION_COOKIE': '2da2e590671719852a41670046d7eae7-1220280461.811025-1645281592', '_': '/usr/bin/python', 'wsgi.errors': <open file '<stderr>', mode 'w' at 0xb7d150b0>, 'wsgi.file_wrapper': <class 'django.core.servers.basehttp.FileWrapper'>, 'wsgi.input': <socket._fileobject object at 0x87ac1b4>, 'wsgi.multiprocess': False, 'wsgi.multithread': True, 'wsgi.run_once': False, 'wsgi.url_scheme': 'http', 'wsgi.version': (1, 0)}> 
    294       self       
    295       <lifeofjalo.blogengine.admin.EntryAdmin object at 0x86b94ac> 
    296     * /usr/lib/python2.5/site-packages/django/shortcuts/__init__.py in render_to_response 
    297         11. 
    298         12. def render_to_response(*args, **kwargs): 
    299         13. """ 
    300         14. Returns a HttpResponse whose content is filled with the result of calling 
    301         15. django.template.loader.render_to_string() with the passed arguments. 
    302         16. """ 
    303         17. httpresponse_kwargs = {'mimetype': kwargs.pop('mimetype', None)} 
    304         18. return HttpResponse(loader.render_to_string(*args, **kwargs), **httpresponse_kwargs) ... 
    305         19. 
    306         20. def _get_queryset(klass): 
    307         21. """ 
    308         22. Returns a QuerySet from a Model, Manager, or QuerySet. Created to make 
    309         23. get_object_or_404 and get_list_or_404 more DRY. 
    310         24. """ 
    311       ▶ Local vars 
    312       Variable  Value 
    313       args       
    314       (['admin/blogengine/entry/change_form.html', 'admin/blogengine/change_form.html', 'admin/change_form.html'], {'add': False, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'app_label': 'blogengine', 'change': True, 'content_type_id': 9L, 'errors': [], 'form_url': '', 'has_absolute_url': False, 'has_add_permission': True, 'has_change_permission': True, 'has_delete_permission': True, 'has_file_field': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'object_id': u'7792', 'opts': <Options for Entry>, 'ordered_objects': [], 'original': <Entry: 2008-08-09 00:00:00>, 'root_path': u'/admin/', 'save_as': False, 'save_on_top': False, 'title': u'Change entry'}) 
    315       httpresponse_kwargs        
    316       {'mimetype': None} 
    317       kwargs     
    318       {'context_instance': [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}]} 
    319     * /usr/lib/python2.5/site-packages/django/template/loader.py in render_to_string 
    320        100. t = select_template(template_name) 
    321        101. else: 
    322        102. t = get_template(template_name) 
    323        103. if context_instance: 
    324        104. context_instance.update(dictionary) 
    325        105. else: 
    326        106. context_instance = Context(dictionary) 
    327        107. return t.render(context_instance) ... 
    328        108. 
    329        109. def select_template(template_name_list): 
    330        110. "Given a list of template names, returns the first that can be loaded." 
    331        111. for template_name in template_name_list: 
    332        112. try: 
    333        113. return get_template(template_name) 
    334       ▶ Local vars 
    335       Variable  Value 
    336       context_instance   
    337       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    338       dictionary         
    339       {'add': False, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'app_label': 'blogengine', 'change': True, 'content_type_id': 9L, 'errors': [], 'form_url': '', 'has_absolute_url': False, 'has_add_permission': True, 'has_change_permission': True, 'has_delete_permission': True, 'has_file_field': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'object_id': u'7792', 'opts': <Options for Entry>, 'ordered_objects': [], 'original': <Entry: 2008-08-09 00:00:00>, 'root_path': u'/admin/', 'save_as': False, 'save_on_top': False, 'title': u'Change entry'} 
    340       t          
    341       <django.template.Template object at 0x87f8eac> 
    342       template_name      
    343       ['admin/blogengine/entry/change_form.html', 'admin/blogengine/change_form.html', 'admin/change_form.html'] 
    344     * /usr/lib/python2.5/site-packages/django/template/__init__.py in render 
    345        169. def __iter__(self): 
    346        170. for node in self.nodelist: 
    347        171. for subnode in node: 
    348        172. yield subnode 
    349        173. 
    350        174. def render(self, context): 
    351        175. "Display stage -- can be called many times" 
    352        176. return self.nodelist.render(context) ... 
    353        177. 
    354        178. def compile_string(template_string, origin): 
    355        179. "Compiles template_string into NodeList ready for rendering" 
    356        180. if settings.TEMPLATE_DEBUG: 
    357        181. from debug import DebugLexer, DebugParser 
    358        182. lexer_class, parser_class = DebugLexer, DebugParser 
    359       ▶ Local vars 
    360       Variable  Value 
    361       context    
    362       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    363       self       
    364       <django.template.Template object at 0x87f8eac> 
    365     * /usr/lib/python2.5/site-packages/django/template/__init__.py in render 
    366        761. # extend_nodelist(). 
    367        762. contains_nontext = False 
    368        763. 
    369        764. def render(self, context): 
    370        765. bits = [] 
    371        766. for node in self: 
    372        767. if isinstance(node, Node): 
    373        768. bits.append(self.render_node(node, context)) ... 
    374        769. else: 
    375        770. bits.append(node) 
    376        771. return mark_safe(''.join([force_unicode(b) for b in bits])) 
    377        772. 
    378        773. def get_nodes_by_type(self, nodetype): 
    379        774. "Return a list of all nodes of the given type" 
    380       ▶ Local vars 
    381       Variable  Value 
    382       bits       
    383       [] 
    384       context    
    385       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    386       node       
    387       <ExtendsNode: extends "admin/base_site.html"> 
    388       self       
    389       [<ExtendsNode: extends "admin/base_site.html">] 
    390     * /usr/lib/python2.5/site-packages/django/template/debug.py in render_node 
    391         64. def compile_function_error(self, token, e): 
    392         65. if not hasattr(e, 'source'): 
    393         66. e.source = token.source 
    394         67. 
    395         68. class DebugNodeList(NodeList): 
    396         69. def render_node(self, node, context): 
    397         70. try: 
    398         71. result = node.render(context) ... 
    399         72. except TemplateSyntaxError, e: 
    400         73. if not hasattr(e, 'source'): 
    401         74. e.source = node.source 
    402         75. raise 
    403         76. except Exception, e: 
    404         77. from sys import exc_info 
    405       ▶ Local vars 
    406       Variable  Value 
    407       context    
    408       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    409       e          
    410       TemplateSyntaxError(u'Caught an exception while rendering: coercing to Unicode: need string or buffer, ImageFieldFile found',) 
    411       node       
    412       <ExtendsNode: extends "admin/base_site.html"> 
    413       self       
    414       [<ExtendsNode: extends "admin/base_site.html">] 
    415     * /usr/lib/python2.5/site-packages/django/template/loader_tags.py in render 
    416         90. # the first non-text node you can stop looking. 
    417         91. break 
    418         92. else: 
    419         93. # Keep any existing parents and add a new one. Used by BlockNode. 
    420         94. parent_block.parent = block_node.parent 
    421         95. parent_block.add_parent(parent_block.nodelist) 
    422         96. parent_block.nodelist = block_node.nodelist 
    423         97. return compiled_parent.render(context) ... 
    424         98. 
    425         99. class ConstantIncludeNode(Node): 
    426        100. def __init__(self, template_path): 
    427        101. try: 
    428        102. t = get_template(template_path) 
    429        103. self.template = t 
    430       ▶ Local vars 
    431       Variable  Value 
    432       block_node         
    433       <Block Node: after_related_objects. Contents: []> 
    434       compiled_parent    
    435       <django.template.Template object at 0x87f8c8c> 
    436       context    
    437       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    438       n          
    439       <Block Node: nav-global. Contents: []> 
    440       node       
    441       <ExtendsNode: extends "admin/base.html"> 
    442       parent_blocks      
    443       {u'branding': <Block Node: branding. Contents: [<Text Node: ' <h1 id="site-name">'>, <django.templatetags.i18n.TranslateNode object at 0x87afe0c>, <Text Node: '</h1> '>]>, u'nav-global': <Block Node: nav-global. Contents: []>, u'title': <Block Node: title. Contents: [<Variable Node: title|escape>, <Text Node: ' | '>, <django.templatetags.i18n.TranslateNode object at 0x87aff2c>]>} 
    444       self       
    445       <ExtendsNode: extends "admin/base_site.html"> 
    446     * /usr/lib/python2.5/site-packages/django/template/__init__.py in render 
    447        169. def __iter__(self): 
    448        170. for node in self.nodelist: 
    449        171. for subnode in node: 
    450        172. yield subnode 
    451        173. 
    452        174. def render(self, context): 
    453        175. "Display stage -- can be called many times" 
    454        176. return self.nodelist.render(context) ... 
    455        177. 
    456        178. def compile_string(template_string, origin): 
    457        179. "Compiles template_string into NodeList ready for rendering" 
    458        180. if settings.TEMPLATE_DEBUG: 
    459        181. from debug import DebugLexer, DebugParser 
    460        182. lexer_class, parser_class = DebugLexer, DebugParser 
    461       ▶ Local vars 
    462       Variable  Value 
    463       context    
    464       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    465       self       
    466       <django.template.Template object at 0x87f8c8c> 
    467     * /usr/lib/python2.5/site-packages/django/template/__init__.py in render 
    468        761. # extend_nodelist(). 
    469        762. contains_nontext = False 
    470        763. 
    471        764. def render(self, context): 
    472        765. bits = [] 
    473        766. for node in self: 
    474        767. if isinstance(node, Node): 
    475        768. bits.append(self.render_node(node, context)) ... 
    476        769. else: 
    477        770. bits.append(node) 
    478        771. return mark_safe(''.join([force_unicode(b) for b in bits])) 
    479        772. 
    480        773. def get_nodes_by_type(self, nodetype): 
    481        774. "Return a list of all nodes of the given type" 
    482       ▶ Local vars 
    483       Variable  Value 
    484       bits       
    485       [] 
    486       context    
    487       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    488       node       
    489       <ExtendsNode: extends "admin/base.html"> 
    490       self       
    491       [<ExtendsNode: extends "admin/base.html">] 
    492     * /usr/lib/python2.5/site-packages/django/template/debug.py in render_node 
    493         64. def compile_function_error(self, token, e): 
    494         65. if not hasattr(e, 'source'): 
    495         66. e.source = token.source 
    496         67. 
    497         68. class DebugNodeList(NodeList): 
    498         69. def render_node(self, node, context): 
    499         70. try: 
    500         71. result = node.render(context) ... 
    501         72. except TemplateSyntaxError, e: 
    502         73. if not hasattr(e, 'source'): 
    503         74. e.source = node.source 
    504         75. raise 
    505         76. except Exception, e: 
    506         77. from sys import exc_info 
    507       ▶ Local vars 
    508       Variable  Value 
    509       context    
    510       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    511       e          
    512       TemplateSyntaxError(u'Caught an exception while rendering: coercing to Unicode: need string or buffer, ImageFieldFile found',) 
    513       node       
    514       <ExtendsNode: extends "admin/base.html"> 
    515       self       
    516       [<ExtendsNode: extends "admin/base.html">] 
    517     * /usr/lib/python2.5/site-packages/django/template/loader_tags.py in render 
    518         90. # the first non-text node you can stop looking. 
    519         91. break 
    520         92. else: 
    521         93. # Keep any existing parents and add a new one. Used by BlockNode. 
    522         94. parent_block.parent = block_node.parent 
    523         95. parent_block.add_parent(parent_block.nodelist) 
    524         96. parent_block.nodelist = block_node.nodelist 
    525         97. return compiled_parent.render(context) ... 
    526         98. 
    527         99. class ConstantIncludeNode(Node): 
    528        100. def __init__(self, template_path): 
    529        101. try: 
    530        102. t = get_template(template_path) 
    531        103. self.template = t 
    532       ▶ Local vars 
    533       Variable  Value 
    534       block_node         
    535       <Block Node: after_related_objects. Contents: []> 
    536       compiled_parent    
    537       <django.template.Template object at 0x874756c> 
    538       context    
    539       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    540       n          
    541       <Block Node: footer. Contents: [<Text Node: '<div id="footer"></div>'>]> 
    542       node       
    543       <Variable Node: LANGUAGE_CODE> 
    544       parent_block       
    545       <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]> 
    546       parent_blocks      
    547       {u'blockbots': <Block Node: blockbots. Contents: [<Text Node: '<meta name="robots" conte'>]>, u'bodyclass': <Block Node: bodyclass. Contents: [<Variable Node: opts.app_label>, <Text Node: '-'>, <Variable Node: opts.object_name.lower>, <Text Node: ' change-form'>]>, u'branding': <Block Node: branding. Contents: [<Text Node: ' <h1 id="site-name">'>, <django.templatetags.i18n.TranslateNode object at 0x87afe0c>, <Text Node: '</h1> '>]>, u'breadcrumbs': <Block Node: breadcrumbs. Contents: [<If node>]>, u'coltype': <Block Node: coltype. Contents: [<If node>]>, u'content': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>, u'content_title': <Block Node: content_title. Contents: [<If node>]>, u'extrahead': <Block Node: extrahead. Contents: [<Variable Node: block.super>, <Text Node: ' <script type="text/javas'>, <Variable Node: media>, <Text Node: ' '>]>, u'extrastyle': <Block Node: extrastyle. Contents: []>, u'footer': <Block Node: footer. Contents: [<Text Node: '<div id="footer"></div>'>]>, u'nav-global': <Block Node: nav-global. Contents: []>, u'object-tools': <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, u'pretitle': <Block Node: pretitle. Contents: []>, u'sidebar': <Block Node: sidebar. Contents: []>, u'stylesheet': <Block Node: stylesheet. Contents: [<django.template.SimpleNode object at 0x879648c>, <Text Node: 'css/forms.css'>]>, u'stylesheet_rtl': <Block Node: stylesheet_rtl. Contents: [<django.template.SimpleNode object at 0x877ec6c>, <Text Node: 'css/rtl.css'>]>, u'title': <Block Node: title. Contents: [<Variable Node: title|escape>, <Text Node: ' | '>, <django.templatetags.i18n.TranslateNode object at 0x87aff2c>]>, u'userlinks': <Block Node: userlinks. Contents: [<django.template.defaulttags.URLNode object at 0x857668c>, <If node>, <Text Node: '<a href="'>, <Variable Node: root_path>, <Text Node: 'password_change/">'>, <django.templatetags.i18n.TranslateNode object at 0x87af58c>, <Text Node: '</a> / <a href="'>, <Variable Node: root_path>, <Text Node: 'logout/">'>, <django.templatetags.i18n.TranslateNode object at 0x877e22c>, <Text Node: '</a>'>]>} 
    548       self       
    549       <ExtendsNode: extends "admin/base.html"> 
    550     * /usr/lib/python2.5/site-packages/django/template/__init__.py in render 
    551        169. def __iter__(self): 
    552        170. for node in self.nodelist: 
    553        171. for subnode in node: 
    554        172. yield subnode 
    555        173. 
    556        174. def render(self, context): 
    557        175. "Display stage -- can be called many times" 
    558        176. return self.nodelist.render(context) ... 
    559        177. 
    560        178. def compile_string(template_string, origin): 
    561        179. "Compiles template_string into NodeList ready for rendering" 
    562        180. if settings.TEMPLATE_DEBUG: 
    563        181. from debug import DebugLexer, DebugParser 
    564        182. lexer_class, parser_class = DebugLexer, DebugParser 
    565       ▶ Local vars 
    566       Variable  Value 
    567       context    
    568       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    569       self       
    570       <django.template.Template object at 0x874756c> 
    571     * /usr/lib/python2.5/site-packages/django/template/__init__.py in render 
    572        761. # extend_nodelist(). 
    573        762. contains_nontext = False 
    574        763. 
    575        764. def render(self, context): 
    576        765. bits = [] 
    577        766. for node in self: 
    578        767. if isinstance(node, Node): 
    579        768. bits.append(self.render_node(node, context)) ... 
    580        769. else: 
    581        770. bits.append(node) 
    582        771. return mark_safe(''.join([force_unicode(b) for b in bits])) 
    583        772. 
    584        773. def get_nodes_by_type(self, nodetype): 
    585        774. "Return a list of all nodes of the given type" 
    586       ▶ Local vars 
    587       Variable  Value 
    588       bits       
    589       [u'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\n<html xmlns="http://www.w3.org/1999/xhtml" lang="', u'en', u'" xml:lang="', u'en', u'" ', '', u'>\n<head>\n<title>', u'Change entry | Life of Jalo admin', u'</title>\n<link rel="stylesheet" type="text/css" href="', u'/admin/static/css/forms.css', u'" />\n', '', u'\n', '', u'\n', u'\n<script type="text/javascript" src="../../../jsi18n/"></script>\n<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>\n', u'\n', u'<meta name="robots" content="NONE,NOARCHIVE" />', u'\n</head>\n', '', u'\n\n<body class="', '', u'blogengine-entry change-form', u'">\n\n<!-- Container -->\n<div id="container">\n\n ', u'\n <!-- Header -->\n <div id="header">\n <div id="branding">\n \n<h1 id="site-name">Life of Jalo administration</h1>\n\n </div>\n \n <div id="user-tools">Welcome, <strong>ramin</strong>. <a href="/admin/password_change/">Change password</a> / <a href="/admin/logout/">Log out</a></div>\n \n \n </div>\n <!-- END Header -->\n \n<div class="breadcrumbs">\n <a href="../../../">Home</a> &rsaquo;\n <a href="../../">Blogengine</a> &rsaquo; \n <a href="../">Entrys</a> &rsaquo;\n 2008-08-09 00:00:00\n</div>\n\n ', u'\n\n ', '', u'\n\n <!-- Content -->\n <div id="content" class="', u'colM', u'">\n ', '', u'\n ', u'<h1>Change entry</h1>', u'\n '] 
    590       context    
    591       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    592       node       
    593       <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]> 
    594       self       
    595       [<Text Node: '<!DOCTYPE html PUBLIC "-/'>, <Variable Node: LANGUAGE_CODE>, <Text Node: '" xml:lang="'>, <Variable Node: LANGUAGE_CODE>, <Text Node: '" '>, <If node>, <Text Node: '> <head> <title>'>, <Block Node: title. Contents: [<Variable Node: title|escape>, <Text Node: ' | '>, <django.templatetags.i18n.TranslateNode object at 0x87aff2c>]>, <Text Node: '</title> <link rel="style'>, <Block Node: stylesheet. Contents: [<django.template.SimpleNode object at 0x879648c>, <Text Node: 'css/forms.css'>]>, <Text Node: '" /> '>, <If node>, <Text Node: ' '>, <Block Node: extrastyle. Contents: []>, <Text Node: ' '>, <Block Node: extrahead. Contents: [<Variable Node: block.super>, <Text Node: ' <script type="text/javas'>, <Variable Node: media>, <Text Node: ' '>]>, <Text Node: ' '>, <Block Node: blockbots. Contents: [<Text Node: '<meta name="robots" conte'>]>, <Text Node: ' </head> '>, <django.template.defaulttags.LoadNode object at 0x87aad4c>, <Text Node: ' <body class="'>, <If node>, <Block Node: bodyclass. Contents: [<Variable Node: opts.app_label>, <Text Node: '-'>, <Variable Node: opts.object_name.lower>, <Text Node: ' change-form'>]>, <Text Node: '"> <!-- Container --> <d'>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' <!-- Content --> '>, <Block Node: coltype. Contents: [<If node>]>, <Text Node: '"> '>, <Block Node: pretitle. Contents: []>, <Text Node: ' '>, <Block Node: content_title. Contents: [<If node>]>, <Text Node: ' '>, <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>, <Text Node: ' '>, <Block Node: sidebar. Contents: []>, <Text Node: ' <br class="clear'>, <Block Node: footer. Contents: [<Text Node: '<div id="footer"></div>'>]>, <Text Node: ' </div> <!-- END Containe'>] 
    596     * /usr/lib/python2.5/site-packages/django/template/debug.py in render_node 
    597         64. def compile_function_error(self, token, e): 
    598         65. if not hasattr(e, 'source'): 
    599         66. e.source = token.source 
    600         67. 
    601         68. class DebugNodeList(NodeList): 
    602         69. def render_node(self, node, context): 
    603         70. try: 
    604         71. result = node.render(context) ... 
    605         72. except TemplateSyntaxError, e: 
    606         73. if not hasattr(e, 'source'): 
    607         74. e.source = node.source 
    608         75. raise 
    609         76. except Exception, e: 
    610         77. from sys import exc_info 
    611       ▶ Local vars 
    612       Variable  Value 
    613       context    
    614       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    615       e          
    616       TemplateSyntaxError(u'Caught an exception while rendering: coercing to Unicode: need string or buffer, ImageFieldFile found',) 
    617       node       
    618       <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]> 
    619       self       
    620       [<Text Node: '<!DOCTYPE html PUBLIC "-/'>, <Variable Node: LANGUAGE_CODE>, <Text Node: '" xml:lang="'>, <Variable Node: LANGUAGE_CODE>, <Text Node: '" '>, <If node>, <Text Node: '> <head> <title>'>, <Block Node: title. Contents: [<Variable Node: title|escape>, <Text Node: ' | '>, <django.templatetags.i18n.TranslateNode object at 0x87aff2c>]>, <Text Node: '</title> <link rel="style'>, <Block Node: stylesheet. Contents: [<django.template.SimpleNode object at 0x879648c>, <Text Node: 'css/forms.css'>]>, <Text Node: '" /> '>, <If node>, <Text Node: ' '>, <Block Node: extrastyle. Contents: []>, <Text Node: ' '>, <Block Node: extrahead. Contents: [<Variable Node: block.super>, <Text Node: ' <script type="text/javas'>, <Variable Node: media>, <Text Node: ' '>]>, <Text Node: ' '>, <Block Node: blockbots. Contents: [<Text Node: '<meta name="robots" conte'>]>, <Text Node: ' </head> '>, <django.template.defaulttags.LoadNode object at 0x87aad4c>, <Text Node: ' <body class="'>, <If node>, <Block Node: bodyclass. Contents: [<Variable Node: opts.app_label>, <Text Node: '-'>, <Variable Node: opts.object_name.lower>, <Text Node: ' change-form'>]>, <Text Node: '"> <!-- Container --> <d'>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' <!-- Content --> '>, <Block Node: coltype. Contents: [<If node>]>, <Text Node: '"> '>, <Block Node: pretitle. Contents: []>, <Text Node: ' '>, <Block Node: content_title. Contents: [<If node>]>, <Text Node: ' '>, <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>, <Text Node: ' '>, <Block Node: sidebar. Contents: []>, <Text Node: ' <br class="clear'>, <Block Node: footer. Contents: [<Text Node: '<div id="footer"></div>'>]>, <Text Node: ' </div> <!-- END Containe'>] 
    621     * /usr/lib/python2.5/site-packages/django/template/loader_tags.py in render 
    622         17. return "<Block Node: %s. Contents: %r>" % (self.name, self.nodelist) 
    623         18. 
    624         19. def render(self, context): 
    625         20. context.push() 
    626         21. # Save context in case of block.super(). 
    627         22. self.context = context 
    628         23. context['block'] = self 
    629         24. result = self.nodelist.render(context) ... 
    630         25. context.pop() 
    631         26. return result 
    632         27. 
    633         28. def super(self): 
    634         29. if self.parent: 
    635         30. return mark_safe(self.parent.render(self.context)) 
    636       ▶ Local vars 
    637       Variable  Value 
    638       context    
    639       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    640       self       
    641       <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]> 
    642     * /usr/lib/python2.5/site-packages/django/template/__init__.py in render 
    643        761. # extend_nodelist(). 
    644        762. contains_nontext = False 
    645        763. 
    646        764. def render(self, context): 
    647        765. bits = [] 
    648        766. for node in self: 
    649        767. if isinstance(node, Node): 
    650        768. bits.append(self.render_node(node, context)) ... 
    651        769. else: 
    652        770. bits.append(node) 
    653        771. return mark_safe(''.join([force_unicode(b) for b in bits])) 
    654        772. 
    655        773. def get_nodes_by_type(self, nodetype): 
    656        774. "Return a list of all nodes of the given type" 
    657       ▶ Local vars 
    658       Variable  Value 
    659       bits       
    660       [u'<div id="content-main">\n', u'\n\n <ul class="object-tools"><li><a href="history/" class="historylink">History</a></li>\n \n </ul>\n\n', u'\n<form ', u'enctype="multipart/form-data" ', u'action="', u'', u'" method="post" id="', u'entry', u'_form">', '', u'\n<div>\n', '', u'\n', '', u'\n', '', u'\n\n', u'\n <fieldset class="module aligned ">\n \n \n \n <div class="form-row pub_date ">\n \n \n \n <label for="id_pub_date" class="required">Publication date:</label><input type="text" name="pub_date" value="2008-08-09 00:00:00" id="id_pub_date" />\n \n \n \n </div>\n \n <div class="form-row title ">\n \n \n \n <label for="id_title">Title:</label><input id="id_title" type="text" name="title" maxlength="200" />\n \n \n \n </div>\n \n <div class="form-row titleFI ">\n \n \n \n <label for="id_titleFI">Finnish title:</label><input id="id_titleFI" type="text" name="titleFI" maxlength="200" />\n \n \n \n </div>\n \n <div class="form-row isMemorial ">\n \n \n \n <input type="checkbox" name="isMemorial" id="id_isMemorial" /><label for="id_isMemorial" class="vCheckboxLabel">Use special layout?</label>\n \n \n \n </div>\n \n <div class="form-row tags ">\n \n \n \n <label for="id_tags">Tags:</label><input id="id_tags" type="text" name="tags" maxlength="200" />\n \n \n \n </div>\n \n</fieldset>\n\n', u'\n\n', '', u'\n\n'] 
    661       context    
    662       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    663       node       
    664       <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3> 
    665       self       
    666       [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>] 
    667     * /usr/lib/python2.5/site-packages/django/template/debug.py in render_node 
    668         64. def compile_function_error(self, token, e): 
    669         65. if not hasattr(e, 'source'): 
    670         66. e.source = token.source 
    671         67. 
    672         68. class DebugNodeList(NodeList): 
    673         69. def render_node(self, node, context): 
    674         70. try: 
    675         71. result = node.render(context) ... 
    676         72. except TemplateSyntaxError, e: 
    677         73. if not hasattr(e, 'source'): 
    678         74. e.source = node.source 
    679         75. raise 
    680         76. except Exception, e: 
    681         77. from sys import exc_info 
    682       ▶ Local vars 
    683       Variable  Value 
    684       context    
    685       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    686       e          
    687       TemplateSyntaxError(u'Caught an exception while rendering: coercing to Unicode: need string or buffer, ImageFieldFile found',) 
    688       node       
    689       <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3> 
    690       self       
    691       [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>] 
    692     * /usr/lib/python2.5/site-packages/django/template/defaulttags.py in render 
    693        141. if unpack: 
    694        142. # If there are multiple loop variables, unpack the item into 
    695        143. # them. 
    696        144. context.update(dict(zip(self.loopvars, item))) 
    697        145. else: 
    698        146. context[self.loopvars[0]] = item 
    699        147. for node in self.nodelist_loop: 
    700        148. nodelist.append(node.render(context)) ... 
    701        149. if unpack: 
    702        150. # The loop variables were pushed on to the context so pop them 
    703        151. # off again. This is necessary because the tag lets the length 
    704        152. # of loopvars differ to the length of each set of items and we 
    705        153. # don't want to leave any vars from the previous loop on the 
    706        154. # context. 
    707       ▶ Local vars 
    708       Variable  Value 
    709       context    
    710       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    711       i          
    712       0 
    713       item       
    714       <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c> 
    715       len_values         
    716       1 
    717       loop_dict          
    718       {'counter': 1, 'counter0': 0, 'first': True, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0} 
    719       node       
    720       <django.template.loader_tags.IncludeNode object at 0x879e96c> 
    721       nodelist   
    722       [u'\n '] 
    723       parentloop         
    724       {} 
    725       self       
    726       <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3> 
    727       unpack     
    728       False 
    729       values     
    730       [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>] 
    731     * /usr/lib/python2.5/site-packages/django/template/loader_tags.py in render 
    732        116. def __init__(self, template_name): 
    733        117. self.template_name = Variable(template_name) 
    734        118. 
    735        119. def render(self, context): 
    736        120. try: 
    737        121. template_name = self.template_name.resolve(context) 
    738        122. t = get_template(template_name) 
    739        123. return t.render(context) ... 
    740        124. except TemplateSyntaxError, e: 
    741        125. if settings.TEMPLATE_DEBUG: 
    742        126. raise 
    743        127. return '' 
    744        128. except: 
    745        129. return '' # Fail silently for invalid included templates. 
    746       ▶ Local vars 
    747       Variable  Value 
    748       context    
    749       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    750       e          
    751       TemplateSyntaxError(u'Caught an exception while rendering: coercing to Unicode: need string or buffer, ImageFieldFile found',) 
    752       self       
    753       <django.template.loader_tags.IncludeNode object at 0x879e96c> 
    754       t          
    755       <django.template.Template object at 0x888ae4c> 
    756       template_name      
    757       'admin/edit_inline/tabular.html' 
    758     * /usr/lib/python2.5/site-packages/django/template/__init__.py in render 
    759        169. def __iter__(self): 
    760        170. for node in self.nodelist: 
    761        171. for subnode in node: 
    762        172. yield subnode 
    763        173. 
    764        174. def render(self, context): 
    765        175. "Display stage -- can be called many times" 
    766        176. return self.nodelist.render(context) ... 
    767        177. 
    768        178. def compile_string(template_string, origin): 
    769        179. "Compiles template_string into NodeList ready for rendering" 
    770        180. if settings.TEMPLATE_DEBUG: 
    771        181. from debug import DebugLexer, DebugParser 
    772        182. lexer_class, parser_class = DebugLexer, DebugParser 
    773       ▶ Local vars 
    774       Variable  Value 
    775       context    
    776       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    777       self       
    778       <django.template.Template object at 0x888ae4c> 
    779     * /usr/lib/python2.5/site-packages/django/template/__init__.py in render 
    780        761. # extend_nodelist(). 
    781        762. contains_nontext = False 
    782        763. 
    783        764. def render(self, context): 
    784        765. bits = [] 
    785        766. for node in self: 
    786        767. if isinstance(node, Node): 
    787        768. bits.append(self.render_node(node, context)) ... 
    788        769. else: 
    789        770. bits.append(node) 
    790        771. return mark_safe(''.join([force_unicode(b) for b in bits])) 
    791        772. 
    792        773. def get_nodes_by_type(self, nodetype): 
    793        774. "Return a list of all nodes of the given type" 
    794       ▶ Local vars 
    795       Variable  Value 
    796       bits       
    797       ['', u'\n<div class="inline-group">\n <div class="tabular inline-related ', u'last-related', u'">\n', u'<input type="hidden" name="images-TOTAL_FORMS" value="2" id="id_images-TOTAL_FORMS" /><input type="hidden" name="images-INITIAL_FORMS" value="1" id="id_images-INITIAL_FORMS" />', u'\n<fieldset class="module">\n <h2>', u'Images', u'</h2>\n ', u'', u'\n <table>\n <thead><tr>\n ', u'\n \n <th colspan="2">None</th>\n \n \n \n <th >Default caption</th>\n \n \n \n <th >Caption in Finnish</th>\n \n ', u'\n ', u'<th>Delete?</th>', u'\n </tr></thead>\n \n '] 
    798       context    
    799       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    800       node       
    801       <For Node: for inline_admin_form in inline_admin_formset, tail_len: 15> 
    802       self       
    803       [<django.template.defaulttags.LoadNode object at 0x87b24ec>, <Text Node: ' <div class="inline-group'>, <If node>, <Text Node: '"> '>, <Variable Node: inline_admin_formset.formset.management_form>, <Text Node: ' <fieldset class="module"'>, <Variable Node: inline_admin_formset.opts.verbose_name_plural|capfirst|escape>, <Text Node: '</h2> '>, <Variable Node: inline_admin_formset.formset.non_form_errors>, <Text Node: ' <table> <thead><'>, <For Node: for field in inline_admin_formset.fields, tail_len: 3>, <Text Node: ' '>, <If node>, <Text Node: ' </tr></thead> '>, <For Node: for inline_admin_form in inline_admin_formset, tail_len: 15>, <Text Node: ' </table> </fi'>, <Text Node: ' '>, <Text Node: ' '>, <Text Node: ' </div> '>] 
    804     * /usr/lib/python2.5/site-packages/django/template/debug.py in render_node 
    805         64. def compile_function_error(self, token, e): 
    806         65. if not hasattr(e, 'source'): 
    807         66. e.source = token.source 
    808         67. 
    809         68. class DebugNodeList(NodeList): 
    810         69. def render_node(self, node, context): 
    811         70. try: 
    812         71. result = node.render(context) ... 
    813         72. except TemplateSyntaxError, e: 
    814         73. if not hasattr(e, 'source'): 
    815         74. e.source = node.source 
    816         75. raise 
    817         76. except Exception, e: 
    818         77. from sys import exc_info 
    819       ▶ Local vars 
    820       Variable  Value 
    821       context    
    822       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    823       e          
    824       TemplateSyntaxError(u'Caught an exception while rendering: coercing to Unicode: need string or buffer, ImageFieldFile found',) 
    825       node       
    826       <For Node: for inline_admin_form in inline_admin_formset, tail_len: 15> 
    827       self       
    828       [<django.template.defaulttags.LoadNode object at 0x87b24ec>, <Text Node: ' <div class="inline-group'>, <If node>, <Text Node: '"> '>, <Variable Node: inline_admin_formset.formset.management_form>, <Text Node: ' <fieldset class="module"'>, <Variable Node: inline_admin_formset.opts.verbose_name_plural|capfirst|escape>, <Text Node: '</h2> '>, <Variable Node: inline_admin_formset.formset.non_form_errors>, <Text Node: ' <table> <thead><'>, <For Node: for field in inline_admin_formset.fields, tail_len: 3>, <Text Node: ' '>, <If node>, <Text Node: ' </tr></thead> '>, <For Node: for inline_admin_form in inline_admin_formset, tail_len: 15>, <Text Node: ' </table> </fi'>, <Text Node: ' '>, <Text Node: ' '>, <Text Node: ' </div> '>] 
    829     * /usr/lib/python2.5/site-packages/django/template/defaulttags.py in render 
    830        141. if unpack: 
    831        142. # If there are multiple loop variables, unpack the item into 
    832        143. # them. 
    833        144. context.update(dict(zip(self.loopvars, item))) 
    834        145. else: 
    835        146. context[self.loopvars[0]] = item 
    836        147. for node in self.nodelist_loop: 
    837        148. nodelist.append(node.render(context)) ... 
    838        149. if unpack: 
    839        150. # The loop variables were pushed on to the context so pop them 
    840        151. # off again. This is necessary because the tag lets the length 
    841        152. # of loopvars differ to the length of each set of items and we 
    842        153. # don't want to leave any vars from the previous loop on the 
    843        154. # context. 
    844       ▶ Local vars 
    845       Variable  Value 
    846       context    
    847       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    848       i          
    849       0 
    850       item       
    851       <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c> 
    852       len_values         
    853       2 
    854       loop_dict          
    855       {'counter': 1, 'counter0': 0, 'first': True, 'last': False, 'parentloop': {'counter': 1, 'counter0': 0, 'first': True, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'revcounter': 2, 'revcounter0': 1} 
    856       node       
    857       <If node> 
    858       nodelist   
    859       [u'\n \n <tr class="', u'row1', u' ', u'has_original', u'">\n\n <td class="original">\n '] 
    860       parentloop         
    861       {'counter': 1, 'counter0': 0, 'first': True, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0} 
    862       self       
    863       <For Node: for inline_admin_form in inline_admin_formset, tail_len: 15> 
    864       unpack     
    865       False 
    866       values     
    867       [<django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>, <django.contrib.admin.helpers.InlineAdminForm object at 0x88a436c>] 
    868     * /usr/lib/python2.5/site-packages/django/template/defaulttags.py in render 
    869        238. if self.link_type == IfNode.LinkTypes.or_: 
    870        239. for ifnot, bool_expr in self.bool_exprs: 
    871        240. try: 
    872        241. value = bool_expr.resolve(context, True) 
    873        242. except VariableDoesNotExist: 
    874        243. value = None 
    875        244. if (value and not ifnot) or (ifnot and not value): 
    876        245. return self.nodelist_true.render(context) ... 
    877        246. return self.nodelist_false.render(context) 
    878        247. else: 
    879        248. for ifnot, bool_expr in self.bool_exprs: 
    880        249. try: 
    881        250. value = bool_expr.resolve(context, True) 
    882        251. except VariableDoesNotExist: 
    883       ▶ Local vars 
    884       Variable  Value 
    885       bool_expr          
    886       <django.template.FilterExpression object at 0x888f36c> 
    887       context    
    888       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    889       ifnot      
    890       False 
    891       self       
    892       <If node> 
    893       value      
    894       Error in formatting: coercing to Unicode: need string or buffer, ImageFieldFile found 
    895     * /usr/lib/python2.5/site-packages/django/template/__init__.py in render 
    896        761. # extend_nodelist(). 
    897        762. contains_nontext = False 
    898        763. 
    899        764. def render(self, context): 
    900        765. bits = [] 
    901        766. for node in self: 
    902        767. if isinstance(node, Node): 
    903        768. bits.append(self.render_node(node, context)) ... 
    904        769. else: 
    905        770. bits.append(node) 
    906        771. return mark_safe(''.join([force_unicode(b) for b in bits])) 
    907        772. 
    908        773. def get_nodes_by_type(self, nodetype): 
    909        774. "Return a list of all nodes of the given type" 
    910       ▶ Local vars 
    911       Variable  Value 
    912       bits       
    913       [u'<p>\n '] 
    914       context    
    915       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    916       node       
    917       <If node> 
    918       self       
    919       [<Text Node: '<p> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' </p>'>] 
    920     * /usr/lib/python2.5/site-packages/django/template/debug.py in render_node 
    921         64. def compile_function_error(self, token, e): 
    922         65. if not hasattr(e, 'source'): 
    923         66. e.source = token.source 
    924         67. 
    925         68. class DebugNodeList(NodeList): 
    926         69. def render_node(self, node, context): 
    927         70. try: 
    928         71. result = node.render(context) ... 
    929         72. except TemplateSyntaxError, e: 
    930         73. if not hasattr(e, 'source'): 
    931         74. e.source = node.source 
    932         75. raise 
    933         76. except Exception, e: 
    934         77. from sys import exc_info 
    935       ▶ Local vars 
    936       Variable  Value 
    937       context    
    938       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    939       e          
    940       TemplateSyntaxError(u'Caught an exception while rendering: coercing to Unicode: need string or buffer, ImageFieldFile found',) 
    941       node       
    942       <If node> 
    943       self       
    944       [<Text Node: '<p> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' </p>'>] 
    945     * /usr/lib/python2.5/site-packages/django/template/defaulttags.py in render 
    946        238. if self.link_type == IfNode.LinkTypes.or_: 
    947        239. for ifnot, bool_expr in self.bool_exprs: 
    948        240. try: 
    949        241. value = bool_expr.resolve(context, True) 
    950        242. except VariableDoesNotExist: 
    951        243. value = None 
    952        244. if (value and not ifnot) or (ifnot and not value): 
    953        245. return self.nodelist_true.render(context) ... 
    954        246. return self.nodelist_false.render(context) 
    955        247. else: 
    956        248. for ifnot, bool_expr in self.bool_exprs: 
    957        249. try: 
    958        250. value = bool_expr.resolve(context, True) 
    959        251. except VariableDoesNotExist: 
    960       ▶ Local vars 
    961       Variable  Value 
    962       bool_expr          
    963       <django.template.FilterExpression object at 0x87b2bec> 
    964       context    
    965       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    966       ifnot      
    967       False 
    968       self       
    969       <If node> 
    970       value      
    971       Error in formatting: coercing to Unicode: need string or buffer, ImageFieldFile found 
    972     * /usr/lib/python2.5/site-packages/django/template/__init__.py in render 
    973        761. # extend_nodelist(). 
    974        762. contains_nontext = False 
    975        763. 
    976        764. def render(self, context): 
    977        765. bits = [] 
    978        766. for node in self: 
    979        767. if isinstance(node, Node): 
    980        768. bits.append(self.render_node(node, context)) ... 
    981        769. else: 
    982        770. bits.append(node) 
    983        771. return mark_safe(''.join([force_unicode(b) for b in bits])) 
    984        772. 
    985        773. def get_nodes_by_type(self, nodetype): 
    986        774. "Return a list of all nodes of the given type" 
    987       ▶ Local vars 
    988       Variable  Value 
    989       bits       
    990       [u' '] 
    991       context    
    992       [{'forloop': {'revcounter0': 1, 'last': False, 'counter': 1, 'parentloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, 'revcounter': 2, 'counter0': 0, 'first': True}, u'inline_admin_form': <django.contrib.admin.helpers.InlineAdminForm object at 0x88a438c>}, {'forloop': {'revcounter0': 0, 'last': True, 'counter': 1, 'parentloop': {}, 'revcounter': 1, 'counter0': 0, 'first': True}, u'inline_admin_formset': <django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>}, {'block': <Block Node: content. Contents: [<Text Node: '<div id="content-main"> '>, <Block Node: object-tools. Contents: [<Text Node: ' '>, <If node>, <Text Node: ' '>]>, <Text Node: ' <form '>, <If node>, <Text Node: 'action="'>, <Variable Node: form_url>, <Text Node: '" method="post" id="'>, <Variable Node: opts.module_name>, <Text Node: '_form">'>, <Block Node: form_top. Contents: []>, <Text Node: ' <div> '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <For Node: for fieldset in adminform, tail_len: 3>, <Text Node: ' '>, <Block Node: after_field_sets. Contents: []>, <Text Node: ' '>, <For Node: for inline_admin_formset in inline_admin_formsets, tail_len: 3>, <Text Node: ' '>, <Block Node: after_related_objects. Contents: []>, <Text Node: ' '>, <django.template.InclusionNode object at 0x8747aec>, <Text Node: ' '>, <If node>, <Text Node: ' '>, <Text Node: ' '>, <django.template.InclusionNode object at 0x87474ec>, <Text Node: ' </div> </form></div> '>]>}, {'has_delete_permission': True, 'has_change_permission': True, 'has_add_permission': True, 'inline_admin_formsets': [<django.contrib.admin.helpers.InlineAdminFormSet object at 0x87f8d0c>], 'is_popup': False, 'change': True, 'content_type_id': 9L, 'save_as': False, 'save_on_top': False, 'errors': [], 'has_file_field': True, 'adminform': <django.contrib.admin.helpers.AdminForm object at 0x873e22c>, 'title': u'Change entry', 'media': '<script type="text/javascript" src="/admin/static/js/core.js"></script>\n<script type="text/javascript" src="/admin/static/js/admin/RelatedObjectLookups.js"></script>', 'root_path': u'/admin/', 'object_id': u'7792', 'add': False, 'opts': <Options for Entry>, 'app_label': 'blogengine', 'form_url': '', 'original': <Entry: 2008-08-09 00:00:00>, 'has_absolute_url': False, 'ordered_objects': []}, {'MEDIA_URL': 'http://localhost/tests/lifeofjalo/images/'}, {'LANGUAGES': (('fi', 'Finnish'), ('en', 'English')), 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': u'en'}, {}, {'perms': <django.core.context_processors.PermWrapper object at 0x87f8d6c>, 'messages': [], 'user': <User: ramin>}, {}] 
    993       node       
    994       <Variable Node: inline_admin_form.original> 
    995       self       
    996       [<Text Node: ' '>, <Variable Node: inline_admin_form.original>] 
    997     * /usr/lib/python2.5/site-packages/django/template/debug.py in render_node 
    998         74. e.source = node.source 
    999         75. raise 
    1000         76. except Exception, e: 
    1001         77. from sys import exc_info 
    1002         78. wrapped = TemplateSyntaxError(u'Caught an exception while rendering: %s' % force_unicode(e, errors='replace')) 
    1003         79. wrapped.source = node.source 
    1004         80. wrapped.exc_info = exc_info() 
    1005         81. raise wrapped ... 
    1006         82. return result 
    1007         83. 
    1008         84. class DebugVariableNode(VariableNode): 
    1009         85. def render(self, context): 
    1010         86. try: 
    1011         87. output = force_unicode(self.filter_expression.resolve(context)) 
    1012       ▶ Local vars  
     3''[original html traceback removed -JKM]''