<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Jotlab &#187; Django</title>
	<atom:link href="http://www.jotlab.com/category/django/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jotlab.com</link>
	<description>Jotlab</description>
	<lastBuildDate>Sun, 07 Mar 2010 23:32:39 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Django Pony Obamerized</title>
		<link>http://www.jotlab.com/2009/01/20/django-pony-obamerized/</link>
		<comments>http://www.jotlab.com/2009/01/20/django-pony-obamerized/#comments</comments>
		<pubDate>Mon, 19 Jan 2009 17:36:02 +0000</pubDate>
		<dc:creator>VoiDeT</dc:creator>
				<category><![CDATA[Django]]></category>
		<category><![CDATA[icon]]></category>
		<category><![CDATA[obama]]></category>
		<category><![CDATA[pony]]></category>

		<guid isPermaLink="false">http://www.jotlab.com/?p=3303</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div align="center"><a href="http://www.jotlab.com/2009/01/20/django-pony-obamerized/django-pony/" rel="attachment wp-att-3304"><img src="http://www.jotlab.com/wp-content/uploads/2009/01/django-pony.gif" alt="django-pony" title="django-pony" width="318" height="472" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://www.jotlab.com/2009/01/20/django-pony-obamerized/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Django 1.0 Template Development</title>
		<link>http://www.jotlab.com/2009/01/06/django-10-template-development/</link>
		<comments>http://www.jotlab.com/2009/01/06/django-10-template-development/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 00:58:35 +0000</pubDate>
		<dc:creator>VoiDeT</dc:creator>
				<category><![CDATA[Django]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[Books]]></category>
		<category><![CDATA[packt]]></category>
		<category><![CDATA[templates]]></category>

		<guid isPermaLink="false">http://www.jotlab.com/?p=3092</guid>
		<description><![CDATA[Yes, another Django book i purchased. But this time not over Amazon, but direct from the publisher! Cheaper! Way Cheaper!

]]></description>
			<content:encoded><![CDATA[<p>Yes, another Django book i purchased. But this time not over Amazon, but direct from the publisher! Cheaper! Way Cheaper!</p>
<p><a rel="attachment wp-att-3093" href="http://www.jotlab.com/2009/01/06/django-10-template-development/attachment/1847195709/"><img title="1847195709" src="http://www.jotlab.com/wp-content/uploads/2009/01/1847195709-500x616.jpg" alt="1847195709" width="500" height="616" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jotlab.com/2009/01/06/django-10-template-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Categories &amp; Subcategories With Django</title>
		<link>http://www.jotlab.com/2008/12/11/categories-subcategories-with-django/</link>
		<comments>http://www.jotlab.com/2008/12/11/categories-subcategories-with-django/#comments</comments>
		<pubDate>Thu, 11 Dec 2008 02:49:30 +0000</pubDate>
		<dc:creator>VoiDeT</dc:creator>
				<category><![CDATA[Django]]></category>
		<category><![CDATA[categories]]></category>
		<category><![CDATA[subcategories]]></category>

		<guid isPermaLink="false">http://www.jotlab.com/?p=2581</guid>
		<description><![CDATA[class Category(models.Model):
name = models.CharField(core=True, maxlength=200)
slug = models.SlugField(prepopulate_from=('name',))
parent = models.ForeignKey('self', blank=True, null=True, related_name='child')
description = models.TextField(blank=True,help_text="Optional")
class Admin:
list_display = ('name', '_parents_repr')
def __str__(self):
p_list = self._recurse_for_parents(self)
p_list.append(self.name)
return self.get_separator().join(p_list)
def get_absolute_url(self):
if self.parent_id:
return "/tag/%s/%s/" % (self.parent.slug, self.slug)
else:
return "/tag/%s/" % (self.slug)
def _recurse_for_parents(self, cat_obj):
p_list = []
if cat_obj.parent_id:
p = cat_obj.parent
p_list.append(p.name)
more = self._recurse_for_parents(p)
p_list.extend(more)
if cat_obj == self and p_list:
p_list.reverse()
return p_list
def get_separator(self):
return ' :: '
def _parents_repr(self):
p_list = self._recurse_for_parents(self)
return self.get_separator().join(p_list)
_parents_repr.short_description = [...]]]></description>
			<content:encoded><![CDATA[<p><code>class Category(models.Model):<br />
name = models.CharField(core=True, maxlength=200)<br />
slug = models.SlugField(prepopulate_from=('name',))<br />
parent = models.ForeignKey('self', blank=True, null=True, related_name='child')<br />
description = models.TextField(blank=True,help_text="Optional")</code></p>
<p><code>class Admin:<br />
list_display = ('name', '_parents_repr')</code></p>
<p><code>def __str__(self):<br />
p_list = self._recurse_for_parents(self)<br />
p_list.append(self.name)<br />
return self.get_separator().join(p_list)</p>
<p>def get_absolute_url(self):<br />
if self.parent_id:<br />
return "/tag/%s/%s/" % (self.parent.slug, self.slug)<br />
else:<br />
return "/tag/%s/" % (self.slug)</p>
<p>def _recurse_for_parents(self, cat_obj):<br />
p_list = []<br />
if cat_obj.parent_id:<br />
p = cat_obj.parent<br />
p_list.append(p.name)<br />
more = self._recurse_for_parents(p)<br />
p_list.extend(more)<br />
if cat_obj == self and p_list:<br />
p_list.reverse()<br />
return p_list</p>
<p>def get_separator(self):<br />
return ' :: '</p>
<p>def _parents_repr(self):<br />
p_list = self._recurse_for_parents(self)<br />
return self.get_separator().join(p_list)<br />
_parents_repr.short_description = "Tag parents"</p>
<p></code></p>
<p> </p>
<p><code> def save(self):<br />
p_list = self._recurse_for_parents(self)<br />
if self.name in p_list:<br />
raise validators.ValidationError("You must not save a category in itself!")<br />
super(Category, self).save()</code></p>
<p><a href="http://code.djangoproject.com/wiki/CookBookCategoryDataModelPostMagic" target="_blank">http://code.djangoproject.com/wiki/CookBookCategoryDataModelPostMagic</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jotlab.com/2008/12/11/categories-subcategories-with-django/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My Blog I Made With My Book</title>
		<link>http://www.jotlab.com/2008/11/13/my-blog-i-made-with-my-book/</link>
		<comments>http://www.jotlab.com/2008/11/13/my-blog-i-made-with-my-book/#comments</comments>
		<pubDate>Wed, 12 Nov 2008 22:36:41 +0000</pubDate>
		<dc:creator>VoiDeT</dc:creator>
				<category><![CDATA[Django]]></category>
		<category><![CDATA[blog]]></category>

		<guid isPermaLink="false">http://www.jotlab.com/?p=2257</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.jotlab.com/wp-content/uploads/2008/11/picture-11.jpg"><img src="http://www.jotlab.com/wp-content/uploads/2008/11/picture-11-500x315.jpg" alt="" title="picture-11" width="500" height="315" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jotlab.com/2008/11/13/my-blog-i-made-with-my-book/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My Django Book Arrived!!!</title>
		<link>http://www.jotlab.com/2008/11/12/my-django-book-arrived/</link>
		<comments>http://www.jotlab.com/2008/11/12/my-django-book-arrived/#comments</comments>
		<pubDate>Tue, 11 Nov 2008 16:43:20 +0000</pubDate>
		<dc:creator>VoiDeT</dc:creator>
				<category><![CDATA[Django]]></category>
		<category><![CDATA[book]]></category>

		<guid isPermaLink="false">http://www.jotlab.com/?p=2236</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p><img title="img_30931" src="http://www.jotlab.com/wp-content/uploads/2008/11/img_30931-500x666.jpg" alt="" width="500" height="666" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jotlab.com/2008/11/12/my-django-book-arrived/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Django IRC &amp; Mibbit.com</title>
		<link>http://www.jotlab.com/2008/11/11/django-irc-mibbitcom/</link>
		<comments>http://www.jotlab.com/2008/11/11/django-irc-mibbitcom/#comments</comments>
		<pubDate>Mon, 10 Nov 2008 19:36:52 +0000</pubDate>
		<dc:creator>VoiDeT</dc:creator>
				<category><![CDATA[Django]]></category>
		<category><![CDATA[channel]]></category>
		<category><![CDATA[irc]]></category>
		<category><![CDATA[mibbit]]></category>

		<guid isPermaLink="false">http://www.jotlab.com/?p=2212</guid>
		<description><![CDATA[If you would like to get some realtime Django help from the experts i recommend you have a look at the Django IRC channel. You can connect @
Django IRC Channel
Server Address: irc.freenode.net
Channel: #django
If you are new to Django i recommend that you also join #django-newbie
You can connect via a webbrowser if you couldn&#8217;t be bothered [...]]]></description>
			<content:encoded><![CDATA[<p>If you would like to get some realtime Django help from the experts i recommend you have a look at the Django IRC channel. You can connect @</p>
<p><strong>Django IRC Channel</strong><br />
<strong>Server Address:</strong> irc.freenode.net<br />
<strong>Channel:</strong> #django</p>
<p>If you are new to Django i recommend that you also join <strong>#django-newbie</strong></p>
<p>You can connect via a webbrowser if you couldn&#8217;t be bothered using an app or finding an irc application that suits you. I really recommend using <strong>mibbit.com</strong>. Don&#8217;t forget to create a user name and password that way you can store the favourite IRC channels!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jotlab.com/2008/11/11/django-irc-mibbitcom/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Practical Django Projects</title>
		<link>http://www.jotlab.com/2008/11/10/practical-django-projects-2/</link>
		<comments>http://www.jotlab.com/2008/11/10/practical-django-projects-2/#comments</comments>
		<pubDate>Sun, 09 Nov 2008 19:30:23 +0000</pubDate>
		<dc:creator>VoiDeT</dc:creator>
				<category><![CDATA[Django]]></category>

		<guid isPermaLink="false">http://www.jotlab.com/?p=2198</guid>
		<description><![CDATA[Up to Chapter 5 of this book. Already i know what the deal is with views, have made a full admin panel which error checks all entries, has categories, tagging and can generate HTML! Whoa!  So good. Just notice that you may need to use SVN number 7966 and tagging r133 which can be [...]]]></description>
			<content:encoded><![CDATA[<p>Up to Chapter 5 of this book. Already i know what the deal is with views, have made a full admin panel which error checks all entries, has categories, tagging and can generate HTML! Whoa! <img src='http://www.jotlab.com/wp-content/plugins/smilies-themer/Silk/emoticon_grin.png' alt=':D' class='wp-smiley' /> So good. Just notice that you may need to use SVN number 7966 and tagging r133 which can be brought down with:</p>
<p><strong>Django Trunk:</strong><br />
svn co -r 7966 http://code.djangoproject.com/svn/django/trunk/</p>
<p><strong>Tagging: </strong><br />
svn co -r 133 http://django-tagging.googlecode.com/svn/trunk/</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jotlab.com/2008/11/10/practical-django-projects-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My Book!</title>
		<link>http://www.jotlab.com/2008/11/07/my-book/</link>
		<comments>http://www.jotlab.com/2008/11/07/my-book/#comments</comments>
		<pubDate>Fri, 07 Nov 2008 03:44:38 +0000</pubDate>
		<dc:creator>VoiDeT</dc:creator>
				<category><![CDATA[Django]]></category>
		<category><![CDATA[book]]></category>

		<guid isPermaLink="false">http://www.jotlab.com/?p=2152</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.jotlab.com/wp-content/uploads/2008/11/ort.jpg"><img title="ort" src="http://www.jotlab.com/wp-content/uploads/2008/11/ort.jpg" alt="" width="469" height="97" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jotlab.com/2008/11/07/my-book/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Practical Django Projects</title>
		<link>http://www.jotlab.com/2008/11/07/practical-django-projects/</link>
		<comments>http://www.jotlab.com/2008/11/07/practical-django-projects/#comments</comments>
		<pubDate>Thu, 06 Nov 2008 23:19:10 +0000</pubDate>
		<dc:creator>VoiDeT</dc:creator>
				<category><![CDATA[Django]]></category>

		<guid isPermaLink="false">http://www.jotlab.com/?p=2147</guid>
		<description><![CDATA[It was this error that spent 2 hours of my day today:
ImportError: No module named coltrane
I had included my PythonPath entry manually into my MacOSX home directory via:
vi .profile
and entering:
export PYTHONPATH=/Users/myname/mydjangodirectory:$PYTHONPATH
This indeed works, but i was using a super user account to run all of my commands because i wanted the development web server to [...]]]></description>
			<content:encoded><![CDATA[<p>It was this error that spent 2 hours of my day today:</p>
<p><code>ImportError: No module named coltrane</code></p>
<p>I had included my PythonPath entry manually into my MacOSX home directory via:</p>
<p><code>vi .profile</code></p>
<p>and entering:</p>
<p><code>export PYTHONPATH=/Users/myname/mydjangodirectory:$PYTHONPATH</code></p>
<p>This indeed works, but i was using a super user account to run all of my commands because i wanted the development web server to run over the default port 80, of which the normal user account doesn&#8217;t have the privileges to. Silly me, because setting the .profile is only local for the user you&#8217;re using, not global. Of course i stopped running the sudo commands and just used the logged in user, and all was fine!</p>
<p>*By the way to save in Vi and exit: hold shift + ZZ*</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jotlab.com/2008/11/07/practical-django-projects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Book in the Mail!</title>
		<link>http://www.jotlab.com/2008/11/07/new-book-in-the-mail/</link>
		<comments>http://www.jotlab.com/2008/11/07/new-book-in-the-mail/#comments</comments>
		<pubDate>Thu, 06 Nov 2008 23:11:29 +0000</pubDate>
		<dc:creator>VoiDeT</dc:creator>
				<category><![CDATA[Django]]></category>

		<guid isPermaLink="false">http://www.jotlab.com/?p=2144</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.jotlab.com/wp-content/uploads/2008/11/picture-1.jpg"><img src="http://www.jotlab.com/wp-content/uploads/2008/11/picture-1-500x580.jpg" alt="" title="picture-1" width="500" height="580" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jotlab.com/2008/11/07/new-book-in-the-mail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Django and Subversion Hourly Updates</title>
		<link>http://www.jotlab.com/2008/08/30/django-and-subversion-hourly-updates/</link>
		<comments>http://www.jotlab.com/2008/08/30/django-and-subversion-hourly-updates/#comments</comments>
		<pubDate>Sat, 30 Aug 2008 00:26:42 +0000</pubDate>
		<dc:creator>VoiDeT</dc:creator>
				<category><![CDATA[Django]]></category>
		<category><![CDATA[cron]]></category>
		<category><![CDATA[crontab]]></category>
		<category><![CDATA[hourly]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[svn]]></category>

		<guid isPermaLink="false">http://www.jotlab.com/?p=1702</guid>
		<description><![CDATA[So if you are developing with Django and python you may be running off the Django SVN trunk. It can be a pain constantly running the update command when you simply want to be up with the development. Of course you would run this on a development server and not a production server! But i [...]]]></description>
			<content:encoded><![CDATA[<p>So if you are developing with Django and python you may be running off the Django SVN trunk. It can be a pain constantly running the update command when you simply want to be up with the development. Of course you would run this on a development server and not a production server! But i have figured out a way to get Subversion to update the django trunk every hour. You can do this on a unix system or mac!</p>
<ol>
<li>Firstly you need to get into your superuser account and run the cron editor. this can be done via: <em>sudo crontab -e</em></li>
<li>You will be asked for your super user password. Next up find a new line in the editor, usually vi, and type this: <em>0 * * * * svn up /home/user/django_trunk/ &gt;&gt; /home/user/log.txt</em></li>
<li>That&#8217;s it! Simply change the paths to match your system. So the /home/user/django_trunk would be the path to where you first installed the django trunk. The second path is where a log file will be produced to show you the updates that the subversion has updated django to. </li>
</ol>
<div>If you would like to know how to install Django via subversion go to <a href="http://www.djangoproject.com/documentation/install/" target="_blank">http://www.djangoproject.com/documentation/install/</a> and look down the bottom for installing development version!</div>
]]></content:encoded>
			<wfw:commentRss>http://www.jotlab.com/2008/08/30/django-and-subversion-hourly-updates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Django Wallpaper 1440 x 900</title>
		<link>http://www.jotlab.com/2008/08/29/django-wallpaper-1440-x-900/</link>
		<comments>http://www.jotlab.com/2008/08/29/django-wallpaper-1440-x-900/#comments</comments>
		<pubDate>Thu, 28 Aug 2008 23:30:01 +0000</pubDate>
		<dc:creator>VoiDeT</dc:creator>
				<category><![CDATA[Django]]></category>
		<category><![CDATA[wallpaper]]></category>

		<guid isPermaLink="false">http://www.jotlab.com/?p=1699</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.jotlab.com/wp-content/uploads/2008/08/django.jpg"><img title="django" src="http://www.jotlab.com/wp-content/uploads/2008/08/django-500x312.jpg" alt="" width="500" height="312" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jotlab.com/2008/08/29/django-wallpaper-1440-x-900/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Django Part 2!</title>
		<link>http://www.jotlab.com/2008/08/28/django-part-2/</link>
		<comments>http://www.jotlab.com/2008/08/28/django-part-2/#comments</comments>
		<pubDate>Thu, 28 Aug 2008 00:11:36 +0000</pubDate>
		<dc:creator>VoiDeT</dc:creator>
				<category><![CDATA[Django]]></category>

		<guid isPermaLink="false">http://www.jotlab.com/?p=1695</guid>
		<description><![CDATA[So i have been reading through the python and django books a bit more. The first one, Developing websites with Django was great, very project based, but it didn&#8217;t really go into the depth i needed in order to start programming my own websites. So i picked up my other book:

]]></description>
			<content:encoded><![CDATA[<p>So i have been reading through the python and django books a bit more. The first one, Developing websites with Django was great, very project based, but it didn&#8217;t really go into the depth i needed in order to start programming my own websites. So i picked up my other book:</p>
<p><img title="51ixby6bw0l1" src="http://www.jotlab.com/wp-content/uploads/2008/08/51ixby6bw0l1.jpg" alt="" width="378" height="500" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jotlab.com/2008/08/28/django-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
