में हाल ही में मैंने ग्राफिक पर काम करना शुरू कर दिया है, मैं किसी भी समस्या के बिना फ्लैट स्कीमा में डेटा सम्मिलित करने में सक्षम हूं, लेकिन जब डेटा के ऐरे की बात आती है तो मैं एक उत्परिवर्तन क्वेरी कैसे बना सकता हूंग्राफक्ल्यू
EventType = new GraphQLObjectType({
name: 'Event',
description: 'A Event',
fields:() => ({
_id: {
type: GraphQLString,
description: 'The id of the event.',
},
id: {
type: GraphQLString,
description: 'The id of the event.',
},
title: {
type: GraphQLString,
description: 'The title of the event.',
},
description: {
type: GraphQLString,
description: 'The description of the event.',
},
media:{
type:new GraphQLList(mediaType),
description:'List of media',
},
location:{
type:new GraphQLList(locationType),
description:'List of location',
}
})
});
// Media Type
export var mediaType = new GraphQLObjectType({
name: 'Media',
description: 'A Media',
fields:() => ({
_id: {
type: GraphQLString,
description: 'The id of the event.',
},
url:{
type: GraphQLString,
description: 'The url of the event.',
},
mediaType:{
type: GraphQLString,
description: 'The mediaTypa of the event.',
}
})
});
// Location Type
export var locationType = new GraphQLObjectType({
name: 'Location',
description: 'A location',
fields:() => ({
_id: {
type: GraphQLString,
description: 'The id of the event.',
},
address:{
type: GraphQLString,
description: 'The address.',
},
state:{
type: GraphQLString,
description: 'The state.',
},
city:{
type: GraphQLString,
description: 'The city.',
},
zip:{
type: GraphQLString,
description: 'The zip code.',
},
country:{
type: GraphQLString,
description: 'The country.',
}
})
});
:
mutation M {
AddEvent
(
title: "Birthday event"
description:"Welcome to all"
media:[{url:"www.google.com", mediaType:"image" }]
location:[{address:{state:"***", city:"****"}}]
)
{title,description,media,location,created,_id}}
यह मेरा घटना स्कीमा है,
{ "errors": [ { "message": "Must be input type" } ]}
मैं डाकिया का उपयोग कर अपनी क्वेरी का परीक्षण कर रहा हूँ की तरह एक त्रुटि हो रही मेरी उत्परिवर्तन क्वेरी
नेवला स्कीमा:
var EventSchema = new mongoose.Schema({
title: {
required: true,
type: String,
trim: true,
match: /^([\w ,.!?]{1,100})$/
},
description: {
required: false,
type: String,
trim: true,
match: /^([\w ,.!?]{1,100})$/
},
media: [{
url: {
type: String,
trim: true
},
mediaType: {
type: String,
trim: true
}
}],
location: [{
address: {
type: String
},
city: {
type: String
},
state: {
type: String
},
zip: {
type: String
},
country: {
type: String
}
}]
})
उत्परिवर्तन प्रकार:
addEvent: {
type: EventType,
args: {
_id: {
type: GraphQLString,
description: 'The id of the event.',
},
title: {
type: GraphQLString,
description: 'The title of the event.',
},
description: {
type: GraphQLString,
description: 'The description of the event.',
},
media:{
type:new GraphQLList(mediaType),
description:'List of media',
},
location:{
type:new GraphQLList(locationType),
description:'List of media',
},
created: {
type: GraphQLInt,
description: 'The created of the user.',
}
},
resolve: (obj, {title,description,media,location,created,_id}) => {
let toCreateEvent = {
title,
description,
created:new Date(),
start: new Date(),
media,
location,
_id,
};
return mongo()
.then(db => {
return new Promise(
function(resolve,reject){
let collection = db.collection('events');
collection.insert(toCreateEvent, (err, result) => {
db.close();
if (err) {
reject(err);
return;
}
resolve(result);
});
})
});
}
}
मैंने इस तरह कुछ किया है (सरणी का उपयोग करके) और यह काम करता है। क्या आप अपनी स्कीमा साझा कर सकते हैं? – mfirry
हाय mfirry, मैंने पोस्ट में अपने मोंगोस और ग्राफक्यूएल स्कीमा को जोड़ा। कृपया उन्हें जांचें और जितनी जल्दी हो सके मुझे उत्तर दें। धन्यवाद!! – Mahesh
मुझे 'उत्परिवर्तन' की भी आवश्यकता है जिसमें आप 'AddEvent' – mfirry