MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Tastypie trả lại dữ liệu từ các yêu cầu DELETE?

Xem xét nguồn tài liệu đối với ngonypie, có vẻ như bạn sẽ cần ghi đè hai chức năng trong tổng số ModelResource (mà MongoEngineResource kế thừa ):

  1. obj_delete sẽ xóa đối tượng.

  2. delete-detail được gọi theo yêu cầu DELETE và gọi obj_delete sau đó trả về 204 No Content hoặc 404 Not Found

Tôi chưa làm việc với Deliciousypie vì vậy tất cả đều là từ việc xem tài liệu, nhưng ít nhất nó là một điểm khởi đầu. Bạn sẽ cần thực hiện một điều gì đó như thế này với lớp học của mình:

class SimpleResource(resources.MongoEngineResource):
    class Meta:
        queryset = Simple.objects.all()
        resource_name = 'simple'
        allowed_methods = ('get', 'put', 'post', 'delete', 'patch')
        always_return_data = True


    def obj_delete(self, bundle, **kwargs):
        try:
            # get an instance of the bundle.obj that will be deleted
            deleted_obj = self.obj_get(bundle=bundle, **kwargs)
        except ObjectDoesNotExist:
            raise NotFound("A model instance matching the provided arguments could not be found.")
        # call the delete, deleting the obj from the database
        super(MongoEngineResource, self).obj_delete(bundle, **kwargs)
        return deleted_obj


    def delete_detail(self, request, **kwargs):
        bundle = Bundle(request=request)

        try:
            # call our obj_delete, storing the deleted_obj we returned
            deleted_obj = self.obj_delete(bundle=bundle, **self.remove_api_resource_names(kwargs))
            # build a new bundle with the deleted obj and return it in a response
            deleted_bundle = self.build_bundle(obj=deleted_obj, request=request)
            deleted_bundle = self.full_dehydrate(deleted_bundle)
            deleted_bundle = self.alter_detail_data_to_serialize(request, deleted_bundle)
            return self.create_response(request, deleted_bundle, response_class=http.HttpNoContent)
        except NotFound:
            return http.HttpNotFound()


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Có cách nào để lấy IDS đã sửa đổi từ các hoạt động hàng loạt của mongodb bằng mongoose không?

  2. không thể cài đặt mongodb trên ubuntu 16.10

  3. Cập nhật Mảng nơi nó tồn tại hoặc Chèn Mục Mảng mới

  4. NodeJS - MongoClient.Kết nối với URL với DB Khác với Mặc định

  5. Chiếu các cấu trúc nhúng khác nhau vào cùng một tên