Hi folks, we&#39;ve not met, I lurk a bit.  If only my Tuesday nights weren&#39;t taken.  <br><br>I&#39;m considering a GeoDjango talk at OS Bridge.  Starting with geodjango-basic-apps, covering ctypes bindings for the core GIS libraries (GEOS/GDAL), spatial queries (GeoQueryset, etc.), mapping client integration (OpenLayers).  Lots of other possibilities, GeoRSS/Atom feeds, KML,  integration with map engines, case studies.<br>
<br>Kirby, looks like you&#39;ll be presenting at the GIS in Action conference this month.  See you there perhaps eh.  We should have an OSGeo booth setup.  I&#39;ll be moderating a marine planning session covering tools we&#39;ve developed with GeoDjango for web and PyQGIS for desktop.<br>
<br>Cheers, Tim<br><br><br>Tim Welch<br>Applications Developer<br>Ecotrust<br><br><br><div class="gmail_quote">On Wed, Apr 1, 2009 at 11:37 PM, Dylan Reinhardt <span dir="ltr">&lt;<a href="mailto:python@dylanreinhardt.com" target="_blank">python@dylanreinhardt.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">If I understand your issue correctly, you want to mix new content created<br>
and managed by Django with legacy content that exists in the form of static<br>
html files.<br>
<br>
This is actually easier than it sounds.  There are many possible solutions,<br>
but here&#39;s one.  Whether it is the right one will depend on how much of what<br>
type of stuff you have.<br>
<br>
So let&#39;s say you have a model you&#39;re using for content.  And let&#39;s say you<br>
want this model to represent a &quot;page&quot; whether that page is new (managed by<br>
Django) or legacy (exists in file).  That way both types of &quot;page&quot; can be<br>
managed by the same views at similar URLs.  If you want that content object<br>
to do double duty, here&#39;s what you might do:<br>
<br>
1. Add a FilePathField to your model.  Docs:<br>
<a href="http://docs.djangoproject.com/en/dev/ref/models/fields/#filepathfield" target="_blank">http://docs.djangoproject.com/en/dev/ref/models/fields/#filepathfield</a><br>
<br>
2. Add a method to your model that returns the contents of the file at the<br>
path specified in that field<br>
<br>
3. In your template(s), check for the presence of a value in the<br>
FilePathField.  If it&#39;s there, just dump out the contents of the file.  If<br>
not, proceed to render your page as you normally would.<br>
<br>
If you end up with images that use relative paths that are no longer valid,<br>
you can probably fix those quickly with an entry in urls.py or an Apache<br>
RewriteRule.  Shouldn&#39;t take much to map any legacy paths to the new static<br>
directory.<br>
<br>
Anyway... hope that&#39;s helpful.<br>
<br>
Dylan<br>
<div><div></div><div><br>
<br>
On Wed, Apr 1, 2009 at 10:59 PM, kirby urner &lt;<a href="mailto:kirby.urner@gmail.com" target="_blank">kirby.urner@gmail.com</a>&gt; wrote:<br>
<br>
&gt; Thanks Dylan, plus to those replying off list.<br>
&gt;<br>
&gt; I&#39;m trying to wrap an old static HTML website in Django such that I<br>
&gt; don&#39;t have to change relative paths to images in subdirectories that<br>
&gt; won&#39;t really be there anymore.  I&#39;m wanting all URLs from the outside<br>
&gt; world to stay the same as well i.e. all the old links will work as is.<br>
&gt;<br>
&gt; <a href="http://www.4dsolutions.net/ocn/cp4e.html" target="_blank">http://www.4dsolutions.net/ocn/cp4e.html</a> will now point to<br>
&gt; <a href="http://www.4dsolutions.net/controlroom/ocn/old/archive/cp4e.html" target="_blank">http://www.4dsolutions.net/controlroom/ocn/old/archive/cp4e.html</a> under<br>
&gt; the hood, with the later containing &lt;img src=&quot;graphics/pix.png&quot;&gt; tags<br>
&gt; that need to be statically served from controlroom/media/ocn/graphics<br>
&gt; -- that kind of thing.<br>
&gt;<br>
&gt; Kind of a hack maybe, an exercise.  The idea is new content would take<br>
&gt; advantage of the framework more, but this is a way of grandfathering<br>
&gt; in what&#39;s at the site already, basically with no changes.<br>
&gt;<br>
&gt; Kirby<br>
&gt;<br>
&gt;<br>
&gt; On Wed, Apr 1, 2009 at 5:12 PM, Dylan Reinhardt<br>
&gt; &lt;<a href="mailto:python@dylanreinhardt.com" target="_blank">python@dylanreinhardt.com</a>&gt; wrote:<br>
&gt; &gt; This might help:<br>
&gt; &gt;<br>
&gt; &gt; <a href="http://docs.djangoproject.com/en/1.0/howto/static-files/" target="_blank">http://docs.djangoproject.com/en/1.0/howto/static-files/</a><br>
&gt; &gt;<br>
&gt; &gt; HTH,<br>
&gt; &gt;<br>
&gt; &gt; Dylan<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; On Wed, Apr 1, 2009 at 4:59 PM, kirby urner &lt;<a href="mailto:kirby.urner@gmail.com" target="_blank">kirby.urner@gmail.com</a>&gt;<br>
&gt; wrote:<br>
&gt; &gt;<br>
&gt; &gt;&gt; Django is driving me nuts I have to admit.  It&#39;s the static media bit.<br>
&gt; &gt;&gt;  It&#39;s all on my Ubuntu laptop so if someone wants to show me where I&#39;m<br>
&gt; &gt;&gt; going wrong, the bagels are on me... (I had it working but then<br>
&gt; &gt;&gt; decided to move directories around...).  Write me off list maybe.  I<br>
&gt; &gt;&gt; live near the Bagdad.<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Yeah, more Python talks would be good.  I&#39;m not altogether clear what<br>
&gt; &gt;&gt; the audience will be like but I think there&#39;s always room for &quot;just<br>
&gt; &gt;&gt; the basics&quot; i.e. a good old fashioned tutorial that doesn&#39;t go too<br>
&gt; &gt;&gt; fast.  I know we&#39;re into test driven development but I think doctest<br>
&gt; &gt;&gt; is sufficient with noobs.  Indeed, Python pedagogy is effective<br>
&gt; &gt;&gt; because interactive...<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; I could see PPUG offering a standard once month free class with<br>
&gt; &gt;&gt; rotating presenter, then spin-off more advanced topic classes that fly<br>
&gt; &gt;&gt; when they fill, sort of Saturday Academy still.  Having something like<br>
&gt; &gt;&gt; a fixed schedule for the free ones, then scrambling amongst ourselves<br>
&gt; &gt;&gt; to always have an instructor, would be a fun way to make PPUG a<br>
&gt; &gt;&gt; stronger glue maybe.    Just a thought.<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Kirby<br>
&gt; &gt;&gt; _______________________________________________<br>
&gt; &gt;&gt; Portland mailing list<br>
&gt; &gt;&gt; <a href="mailto:Portland@python.org" target="_blank">Portland@python.org</a><br>
&gt; &gt;&gt; <a href="http://mail.python.org/mailman/listinfo/portland" target="_blank">http://mail.python.org/mailman/listinfo/portland</a><br>
&gt; &gt;&gt;<br>
&gt; &gt; -------------- next part --------------<br>
&gt; &gt; An HTML attachment was scrubbed...<br>
&gt; &gt; URL: &lt;<br>
&gt; <a href="http://mail.python.org/pipermail/portland/attachments/20090401/a977a3dd/attachment.htm" target="_blank">http://mail.python.org/pipermail/portland/attachments/20090401/a977a3dd/attachment.htm</a><br>
&gt; &gt;<br>
&gt; &gt; _______________________________________________<br>
&gt; &gt; Portland mailing list<br>
&gt; &gt; <a href="mailto:Portland@python.org" target="_blank">Portland@python.org</a><br>
&gt; &gt; <a href="http://mail.python.org/mailman/listinfo/portland" target="_blank">http://mail.python.org/mailman/listinfo/portland</a><br>
&gt; &gt;<br>
&gt; _______________________________________________<br>
&gt; Portland mailing list<br>
&gt; <a href="mailto:Portland@python.org" target="_blank">Portland@python.org</a><br>
&gt; <a href="http://mail.python.org/mailman/listinfo/portland" target="_blank">http://mail.python.org/mailman/listinfo/portland</a><br>
&gt;<br>
-------------- next part --------------<br>
An HTML attachment was scrubbed...<br>
</div></div>URL: &lt;<a href="http://mail.python.org/pipermail/portland/attachments/20090401/c9253473/attachment.htm" target="_blank">http://mail.python.org/pipermail/portland/attachments/20090401/c9253473/attachment.htm</a>&gt;<br>


<div><div></div><div>_______________________________________________<br>
Portland mailing list<br>
<a href="mailto:Portland@python.org" target="_blank">Portland@python.org</a><br>
<a href="http://mail.python.org/mailman/listinfo/portland" target="_blank">http://mail.python.org/mailman/listinfo/portland</a><br>
</div></div></blockquote></div><br>