django and TextMate : open Exception location file
7 July 2008
if you are working on your localhost, TextMate has a URL scheme to open a local file.
http://manual.macromates.com/en/using_textmate_from_terminal.html
so when an Exception happens in django you can click to open the file directly. this saves months of looking. these large code projects are all about going from one file to another.
the quickest thing to do is just to hack the django. later I'll try to make it into a middleware or replacement template.
Index: /Users/crucial/Sites/sustainall/django/views/debug.py
===================================================================
--- /Users/crucial/Sites/sustainall/django/views/debug.py (revision 7774)
+++ /Users/crucial/Sites/sustainall/django/views/debug.py (working copy)
@@ -377,7 +377,8 @@
Exception Location:
-{{ lastframe.filename|escape }} in {{ lastframe.function|escape }}, line {{ lastframe.lineno }}
+{{ lastframe.filename|escape }} in {{ lastframe.function|escape }}, line {{ lastframe.lineno }}
+
Python Executable:
@@ -445,7 +446,7 @@
{ for frame in frames }
-{{ frame.filename|escape }}in{{ frame.function|escape }}
+{{ frame.filename|escape }}in{{ frame.function|escape }}
{% if frame.context_line %}
more posts in tech notes
- django has two classes called ValidationError
There is one in django.core.exceptions and one in django.forms.util Using that space age IDE Eclipse I have to say I'm enjoying how much time I've saved just going shift-command-O to organize and resolve all of my imports. But today I've just lost a few hours due to my ok-ing the wrong class. Quite mysterious it was, I raised a ValidationError (core exceptions one) in my form's clean() and watched as the try: except ValidationError: in django's full_clean() completely ignored my ...
- GDAL fails to build: `.rodata' can not be used when making a shared object; recompile with -fPIC
libtool: link: g++ -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/4.4.1/../../../../lib/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.4.1/crtbeginS.o .libs/libgdal.la.lnkscript -L/usr/local/lib /usr/local/lib/libgeos_c.so /usr/local/lib/libgeos.so /usr/local/lib/libexpat.so -L/usr/lib -lpq -lrt -ldl /usr/lib/libcurl.so -lssl -lcrypto -lz -L/usr/lib/gcc/x86_64-linux-gnu/4.4.1 -L/usr/lib/gcc/x86_64-linux-gnu/4.4.1/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.4.1/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/4.4.1/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/4.4.1/../../../../lib/crtn.o -Wl,-soname -Wl,libgdal.so.1 -o .libs/libgdal.so.1.13.2 /usr/bin/ld: /usr/local/lib/libz.a(crc32.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC /usr/local/lib/libz.a: could not read symbols: Bad value collect2: ld returned 1 exit status make[1]: *** [libgdal.la] Error 1 make[1]: Leaving directory `/home/crucial/tmp/gdal-1.6.2' ...
- installing MySQLdb on Ubuntu (mysql-python)
MySQLdb is the python support bindings for MySQL. Not that the name would lead you to beleive that. Its sourceforge page calls it http://sourceforge.net/projects/mysql-python/ which makes more sense. you need setuptools, which you usually already have: sudo aptitude install python-setuptools You need MySQL-devel to compile, but its not called that, its called: libmysql++-dev on Ubuntu sudo apt-get install libmysql++-dev download MySQLdb itself from: http://sourceforge.net/projects/mysql-python/ # the version you download will be more recent tar xfz ...
- postgres login as admin user postgres
When installing postgres a user will be created named 'postgres' with a password of '!!' which means "cannot login". But yet you need to login as that in order to run psql (the postgres db shell) to create other users and to create database templates. The solution is to first log yourself in as root (in your normal shell): su root (enter password...) then you will no longer be subject to password checks and you can login in as user ...
- Full index for tech notes
- django has two classes called ValidationError



