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

Xử lý các trường phổ biến Mongoose trong GraphQL

Trên thực tế, bạn có thể sử dụng union hoặc giao diện nhập cho linked_device trường.

Sử dụng kiểu liên hợp, bạn có thể triển khai GQAssetType như sau:

// graphql-asset-type.js

import { GraphQLObjectType, GraphQLString, GraphQLUnionType } from 'graphql'

var LinkedDeviceType = new GraphQLUnionType({
  name: 'Linked Device',
  types: [ ObjectIdType, GQAssetType ],
  resolveType(value) {
    if (value instanceof ObjectId) {
      return ObjectIdType;
    }
    if (value instanceof Asset) {
      return GQAssetType;
    }
  }
});

export var GQAssetType = new GraphQLObjectType({
  name: 'Asset',
  fields: () => ({
    name: { type: GraphQLString },
    linked_device: { type: LinkedDeviceType },
  })
});

Hãy xem bài viết tuyệt vời này về công đoàn và giao diện GraphQL .



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. không thể kết nối với mongodb được lưu trữ trên máy chủ từ xa bằng mon

  2. Bỏ bộ sưu tập cơ sở dữ liệu Mongo trong Meteor

  3. Trong MongoDB, làm cách nào để sắp xếp tài liệu dựa trên một thuộc tính trong một đối tượng được nhúng?

  4. Có điều kiện bao gồm một trường (_id hoặc khác) trong tập hợp dự án mongodb?

  5. ImportError:Không có mô-đun nào có tên objectid