Author: floguy
Date: Sun Sep 7 15:54:39 2008
New Revision: 8
Modified:
trunk/things/options.py
trunk/things/sites.py
trunk/things/templates/things/thing_list.html
trunk/thingsproject/dev.db
trunk/thingsproject/settings.py
trunk/thingsproject/twitter/thing.py
Log:
Fleshed out the detail view in a better way, and added template selection.
Modified: trunk/things/options.py
==============================================================================
--- trunk/things/options.py (original)
+++ trunk/things/options.py Sun Sep 7 15:54:39 2008
@@ -3,6 +3,7 @@
from django.http import HttpResponse
from django.shortcuts import render_to_response, get_object_or_404
from django.template import RequestContext
+from django.template.loader import select_template
from django.core.urlresolvers import reverse
from things.fields import BaseField
@@ -23,6 +24,7 @@
__metaclass__ = ModelThingMetaclass
fields = {}
+ comments = False
def __init__(self, model, thing_site):
self.model = model
@@ -59,8 +61,8 @@
return patterns('', *tmp_urls)
def list_view(self, request, descending=False, app_label=None,
model_name=None, field=None):
- assert app_label is None or app_label == self.model._meta.app_label
- assert model_name is None or model_name ==
self.model._meta.module_name
+ assert app_label is None or app_label == self.opts.app_label
+ assert model_name is None or model_name == self.opts.module_name
items = self.model._default_manager.all()
if field is not None:
pre = ''
@@ -73,9 +75,17 @@
'field': field,
'name_prefix': self.name_prefix,
}
- return render_to_response('things/thing_list.html', context,
+ return render_to_response('things/list.html', context,
context_instance=RequestContext(request))
- def detail_view(self, request, pk):
- # TODO: Flesh this out for realz
- return HttpResponse(unicode(get_object_or_404(self.model, pk=pk)))
\ No newline at end of file
+ def detail_view(self, request, pk, template_object_name='object',
template_name=None):
+ if template_name is None:
+ template_name = self.opts.module_name
+ obj = get_object_or_404(self.model, pk=pk)
+ templates = ['things/%s_detail.html' % (template_name,),
+ 'things/thing_detail.html']
+ t = select_template(templates)
+ c = RequestContext(request, {
+ template_object_name: obj,
+ })
+ return HttpResponse(t.render(c))
\ No newline at end of file
Modified: trunk/things/sites.py
==============================================================================
--- trunk/things/sites.py (original)
+++ trunk/things/sites.py Sun Sep 7 15:54:39 2008
@@ -62,8 +62,13 @@
def urls(self, prefix='^things/'):
urlpatterns = patterns('',
- url(r'%s$' % prefix, self.index, name="%s_index" %
self.name_prefix)
+ url(r'%s$' % (prefix,), self.index, name="%s_index" %
self.name_prefix)
)
+ if any([o.comments for o in self._registry.itervalues()]):
+ urlpatterns += patterns('',
+ url(r'%scomments/' % (prefix,),
+ include('django.contrib.comments.urls')),
+ )
for (model, model_thing) in self._registry.iteritems():
urlpatterns += patterns('',
url(r'%s(?P<app_label>%s)/(?P<model_name>%s)/$' % (prefix,
Modified: trunk/things/templates/things/thing_list.html
==============================================================================
--- trunk/things/templates/things/thing_list.html (original)
+++ trunk/things/templates/things/thing_list.html Sun Sep 7 15:54:39 2008
@@ -1,5 +1,6 @@
{% extends "things/base.html" %}
{% load things_tags %}
+{% load comments %}
{% block main_content %}
<p>Order By:</p>
Modified: trunk/thingsproject/dev.db
==============================================================================
Binary files. No diff available.
Modified: trunk/thingsproject/settings.py
==============================================================================
--- trunk/thingsproject/settings.py (original)
+++ trunk/thingsproject/settings.py Sun Sep 7 15:54:39 2008
@@ -78,6 +78,7 @@
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.admin',
+ 'django.contrib.comments',
'twitter',
'things',
)
Modified: trunk/thingsproject/twitter/thing.py
==============================================================================
--- trunk/thingsproject/twitter/thing.py (original)
+++ trunk/thingsproject/twitter/thing.py Sun Sep 7 15:54:39 2008
@@ -6,5 +6,6 @@
verbose_name_desc='Oldest', url_asc='newest', url_desc='oldest',
field_url='date')
message = things.OrderField()
+ comments = True
things.site.register(Tweet, TweetThing)
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"pinax-updates" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/pinax-updates?hl=en
-~----------~----~----~----~------~----~------~--~---