Advertisement
Guest User

Untitled

a guest
Jan 26th, 2015
203
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.02 KB | None | 0 0
  1. resources:
  2.  
  3. class BlueprintResource(ModelResource):
  4. # workloads = ManyToManyField(Workload, 'workloads')
  5. workloads = fields.ManyToManyField('catalog.api.WorkloadResource', attribute='workloads',
  6. full=True, null=True)
  7.  
  8. def obj_create(self, bundle, request=None, **kwargs):
  9. return super(BlueprintResource, self).obj_create(bundle, request)
  10.  
  11. def obj_update(self, bundle, request=None, **kwargs):
  12.  
  13. blueprint = Blueprint.objects.get(id=kwargs.get("pk"))
  14. blueprint.description = bundle.data.get("description")
  15. blueprint.name = bundle.data.get("name")
  16. blueprint.workloads = bundle.data.get("workloads")
  17. blueprint.save()
  18.  
  19. def obj_delete(self, bundle, **kwargs):
  20.  
  21. return super(BlueprintResource, self).obj_delete(bundle)
  22.  
  23. class Meta:
  24. queryset = Blueprint.objects.all()
  25. resource_name = 'blueprint'
  26. authorization = Authorization()
  27.  
  28.  
  29. class WorkloadResource(ModelResource):
  30. # blueprints = ManyToManyField(Blueprint, 'blueprints')
  31. blueprints = fields.ManyToManyField('catalog.api.BlueprintResource', attribute='blueprints',
  32. related_name='workloads', full=True, null=True)
  33.  
  34. def obj_create(self, bundle, request=None, **kwargs):
  35. return super(WorkloadResource, self).obj_create(bundle, request)
  36.  
  37. def obj_update(self, bundle, request=None, **kwargs):
  38.  
  39. workload = Workload.objects.get(id=kwargs.get("pk"))
  40. workload.description = bundle.data.get("description")
  41. workload.name = bundle.data.get("name")
  42. workload.image = bundle.data.get("image")
  43. workload.flavor = bundle.data.get("flavor")
  44. workload.save()
  45.  
  46. def obj_delete(self, bundle, **kwargs):
  47.  
  48. return super(WorkloadResource, self).obj_delete(bundle)
  49.  
  50. def determine_format(self, request):
  51. return 'application/json'
  52.  
  53. class Meta:
  54. queryset = Workload.objects.all()
  55. resource_name = 'workload'
  56. authorization=Authorization()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement