app/django/contrib/databrowse/plugins/objects.py
author Lennard de Rijk <ljvderijk@gmail.com>
Sun, 25 Oct 2009 18:46:59 -0700
changeset 3053 1dc307cb97d0
parent 54 03e267d67478
permissions -rw-r--r--
Redone the access checks to work with the new Request model. Also includes some whitespace fixes to the access model.

from django import http
from django.contrib.databrowse.datastructures import EasyModel
from django.contrib.databrowse.sites import DatabrowsePlugin
from django.shortcuts import render_to_response
import urlparse

class ObjectDetailPlugin(DatabrowsePlugin):
    def model_view(self, request, model_databrowse, url):
        # If the object ID wasn't provided, redirect to the model page, which is one level up.
        if url is None:
            return http.HttpResponseRedirect(urlparse.urljoin(request.path, '../'))
        easy_model = EasyModel(model_databrowse.site, model_databrowse.model)
        obj = easy_model.object_by_pk(url)
        return render_to_response('databrowse/object_detail.html', {'object': obj, 'root_url': model_databrowse.site.root_url})