Hoe gaat je object om met meerdere datasources?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Lendl Verschoor

Lendl Verschoor

29/07/2013 14:54:28
Quote Anchor link
ik heb een object in Jquery genaamd Item die er als volgt uitziet ( ik maak gebruik van knockoutjs)
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
var item = function(data){
var self = this;
this.itemA = ko.observable(data.itemA);
this.itemB = ko.observable(data.itemB);
this.itemC = ko.observable(data.itemC);
}


In me project gebruik ik meerdere data sources (databse en Json call) en beide data sources geven hun eigen benaming aan de entiteiten.
Database noemt ze itemA, itemB en itemC.
json noemt ze A, B en C.

Hoe zorg ik er voor dat mij object met beide data sources om kan gaan?
Gewijzigd op 29/07/2013 15:00:37 door Lendl Verschoor
 
PHP hulp

PHP hulp

26/11/2024 13:32:27
 
Wouter J

Wouter J

29/07/2013 17:27:26
Quote Anchor link
data.itemA || data.A ?
 
Frank Nietbelangrijk

Frank Nietbelangrijk

29/07/2013 17:31:00
Quote Anchor link
Niet ideaal als de namen telkens anders zijn maar misschien kun je het zo oplossen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
    if(myobject.hasOwnProperty('itemA')){
        myobject.itemA = 'banaan';    
    } else if(myobject.hasOwnProperty('A')) {
        myobject.A = 'banaan';    
    }
 
Lendl Verschoor

Lendl Verschoor

29/07/2013 20:56:20
Quote Anchor link
heb besloten om een extra parameter mee te geven om zo de datasource te bepalen en dan zo een eigen datasource items object te maken. want het is mogelijk dat er een derde datasource bij komt en aangezien ze allemaal verschillend zijn moet ik speciaal aangeven hoe de entiteiten heten.

Bedankt voor de snelle reacties en het meedenken!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.