def handle(self, *args, **options): roottag, xmltree = validate_xml(options['xmlfile']) if roottag == 'conditions': import_conditions(xmltree) elif roottag == 'options': import_options(xmltree) elif roottag == 'domain': import_domain(xmltree) elif roottag == 'catalog': import_catalog(xmltree) elif roottag == 'tasks': import_tasks(xmltree) elif roottag == 'views': import_views(xmltree) elif roottag == 'project': try: user = User.objects.get(username=options['user']) except User.DoesNotExist: raise CommandError('Give a valid username using --user.') import_project(xmltree, user)
def post(self, request, *args, **kwargs): try: request.FILES['uploaded_file'] except: return HttpResponseRedirect(self.success_url) else: tempfilename = handle_uploaded_file(request.FILES['uploaded_file']) roottag, xmltree = validate_xml(tempfilename) if roottag == 'views': import_views(xmltree) return HttpResponseRedirect(self.success_url) else: log.info('Xml parsing error. Import failed.') return render(request, self.parsing_error_template, status=400)