ρωτώντας ένθετα αντικείμενα με τις σχέσεις στο χώρο αντιδρούν μητρική

ψήφοι
0

Είμαι προσπαθεί να χρησιμοποιήσει σφαίρα DB στο έργο μου. εδώ οι σχήματα:

export const AllParentObj = {
    name:AllParentObj,
    properties:{
        AllObjects:OneChildObj[] 
    }
}
export const OneChildObj = {
    name:OneChildObj,
    properties:{
        chKey:string,
        chItems:subChild[]
    }
};

export const subChild = {
    name:subChild,
    properties:{
        subChName:string,
        subChMsg:string
    }
};

και εδώ είναι ο τρόπος που εγώ προσπαθώ να διαβάσω από σφαίρα:

let myCode = langid1;
let myid=xyz;
let allObjs = this.DBRealm.objects('AllParentObj').
                    filtered(`AllObjs.chkey== '${myCode}' AND \
                                AllObjs.chItems.subChName== '${myid}'`);

Η παραπάνω επερώτηση επιστρέφει όλα τα αποτελέσματα του ερωτήματος AllObjs.chkey== '${myCode}' η άλλη προϋπόθεση δεν έχει ληφθεί για το φιλτράρισμα . Υπάρχει κάποια θέση κάνω λάθος στον παραπάνω κώδικα εκεί;

Θέλω η έξοδος από το φίλτρο μου να είναι η σελίδα που να ταιριάζουν μέσα σε ένα συγκεκριμένο κωδικό lang. ex: δείγμα json εισόδου στο χώρο DB μου:

{
    AllMessages:[
        {
            locale:langid1,
            pages:[
                {
                    pageName:pagename,
                    messages:
                        {
                            ml1p1m1:msgText,
                            ml1p1m2:ml1 m2text
                        }

                },
                {
                    pageName:xyz,
                    messages:
                        {
                            ml1p2m1:ml1p2m1 text,
                            ml1p2m2:ml1p2m2 text
                        }
                },
                {
                    pageName:rtyui,
                    messages:
                        {
                            ml1p2m1:ml1p3m1 text,
                            ml1p2m2:ml1p3m2 text
                        }
                },

            ]
        },
        {
            locale:langid2,
            pages:[
                {
                    pageName:abcd,
                    messages:{
                            ml2p1m1:ml2p1m1 text,
                            ml2p1m2:ml2p1m2 text
                        }
                },
                {
                    pageName:hjk,
                    messages:{
                            ml2p2m1:ml2p2m1
                        }
                },

            ]
        },

    ]
}

Έξοδος: για langid1 και όνομα σελίδας: xyz

{
        pageName:xyz,
        messages:
        {
            ml1p2m1:ml1p2m1 text,
            ml1p2m2:ml1p2m2 text
        }
}

μπορεί κάποιος παρακαλώ να με βοηθήσει; PS: Δεν υπάρχουν σύνταξη λάθη. βασικά πολλαπλά φίλτρα δεν παίρνουν εφαρμόζονται. όταν θ ισχύουν μόνο φίλτρο, ακόμη και σε επίπεδο subChild εργασίας του.

Δημοσιεύθηκε 27/11/2018 στις 17:35
πηγή χρήστη
Σε άλλες γλώσσες...                            

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