MongoDB $ itme aslında dizinin üzerine herhangi bir şey iterek değil

oy
0

Birlikte kod satırını yorumladı // This Command Does not workBen kırılma olduğundan şüpheleniyorsanız nerede. Çitanýn ayıklama günlüğünde, çıkış görünüyor bu gibi: Ama hiçbir şey DaysOfWeek şeması için Pazartesi nesnesindeki medicineIds diziye eklenir.

Aşağıda, I dizinin üzerine geri itin ve benim Mongo veritabanında sonucu göremiyorum DayOfWeek.findOneAndUpdate () için hata ayıklama çıkışıdır.

Eğer tüm diğer sorular gibi bu görmezden olacak, bana neden bildirin.

Mongoose: dayofweeks.insertOne({ medicineIds: [], _id: 'Monday', __v: 0 }, { session: null }) // <- response to $push

Mongoose: medicines.insertOne({ times: [ 1, 2 ], dayNames: [ 'Monday' ], _id: ObjectId(5e73d816d54b1202e15bb96b), nam
e: 'Provolone', count: 23, __v: 0 }, { session: null })
Mongoose: dayofweeks.findOne({ _id: 'Monday' }, { projection: {} })

mutasyon

const Mutation = new GraphQLObjectType({
    name: 'Mutation',
    fields: {
        addDayOfWeek: {
            type: DayOfWeekType,
            args: {
                name: { type: new GraphQLNonNull(GraphQLString) }
            },
            resolve(parent, args) {
                let dayOfWeek = new DayOfWeek({
                    _id: args.name,
                    medicineIds: new Array()
                });

                return dayOfWeek.save(); 
            }
        },
        addNewMedicine: {
            type: MedicineType,
            args: {
                name: { type: new GraphQLNonNull(GraphQLString) },
                count: { type: new GraphQLNonNull(GraphQLInt) },
                times: { type: new GraphQLNonNull(GraphQLList(GraphQLInt))},
                dayNames: { type: new GraphQLNonNull(GraphQLList(GraphQLString))}
            },

            resolve (parent, args) {
                let medicine = new Medicine({
                    name: args.name,
                    count: args.count,
                    times: args.times,
                    dayNames: args.dayNames
                }); 
                args.dayNames.forEach((dayId) => {
                    DayOfWeek.findOneAndUpdate( // This Command Does Not Work: 
                        // medicine._id, dayId are correct at this point of the 
                        //code
                        { _id: dayId }, 
                        { $push: { medicineIds: medicine._id }},
                        { new: true, useFindAndModify: false }
                    );

                });
                return medicine.save(); 
            }
        }
    }
});

DayOfWeek Şeması

const mongoose = require('mongoose');
const Schema = mongoose.Schema; 

const dayOfWeekSchema = new Schema({
    _id: String,
    medicineIds: [String] // I am trying to push onto this array
});

module.exports = mongoose.model('DayOfWeek', dayOfWeekSchema);

Tıp Şeması

const mongoose = require('mongoose');
const Schema = mongoose.Schema; 

const medicineSchema = new Schema({
    id: String,
    count: Number,
    name: String,
    times: [Number],
    dayNames: [String]
});

module.exports = mongoose.model('Medicine', medicineSchema);
Oluştur 19/03/2020 saat 21:56
kaynak kullanıcı
Diğer dillerde...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more