[svn] * Make subcave urls work.

* Add json and xml download to admin.
This commit is contained in:
substantialnoninfringinguser
2009-05-22 01:50:16 +01:00
parent 9f13a58498
commit 49ed6495ad
7 changed files with 78 additions and 8 deletions

View File

@@ -4,6 +4,8 @@ from feincms.admin import editor
from django.forms import ModelForm
import django.forms as forms
from expo.forms import LogbookEntryForm
from django.http import HttpResponse
from django.core import serializers
#from troggle.reversion.admin import VersionAdmin #django-reversion version control
#overriding admin save so we have the new since parsing field
@@ -73,7 +75,6 @@ class CaveAdmin(TroggleModelAdmin):
class SubcaveAdmin(editor.TreeEditorMixin,TroggleModelAdmin):
pass
admin.site.register(Photo)
admin.site.register(Subcave, SubcaveAdmin)
admin.site.register(Cave, CaveAdmin)
@@ -94,6 +95,29 @@ admin.site.register(QM, QMAdmin)
admin.site.register(Survey, SurveyAdmin)
admin.site.register(ScannedImage)
def export_as_json(modeladmin, request, queryset):
response = HttpResponse(mimetype="text/json")
response['Content-Disposition'] = 'attachment; filename=troggle_output.xml'
serializers.serialize("json", queryset, stream=response)
return response
admin.site.add_action(export_as_json)
def export_as_xml(modeladmin, request, queryset):
response = HttpResponse(mimetype="text/xml")
response['Content-Disposition'] = 'attachment; filename=troggle_output.xml'
return response
admin.site.add_action(export_as_xml)
def export_as_python(modeladmin, request, queryset):
response = HttpResponse(mimetype="text/python")
response['Content-Disposition'] = 'attachment; filename=troggle_output.py'
serializers.serialize("json", queryset, stream=response)
return response
admin.site.add_action(export_as_python)
try:
mptt.register(Subcave, order_insertion_by=['name'])
except mptt.AlreadyRegistered: