2015-03-10 7 views
5

Sto utilizzando autoform, collection2. Voglio utilizzare il tipo di chiamata metodo per inserimento/aggiornamento, poiché voglio aggiungere campi aggiuntivi prima di salvarlo nel database nel server. SimpleSchema controllerebbe i dati nel client, ma come posso verificare i dati rispetto allo schema anche sul lato server? Il mio metodo per l'aggiunta di nuovi dati è il seguente:Verifica dello schema sul metodo Meteor utilizzando l'autoforming

Meteor.methods({ 
    companyAdd: function (companyAttr) { 

    // add additional fields to document 

    var currentDate = new Date(); 

    var company = _.extend(companyAttr, { 
     createdBy: user._id, 
     createdAt: currentDate 
    }); 

    var newCompanyId = Companies.insert(company); 
    return {_id: newCompanyId}; 
    } 
} 
+0

La prego di accettare la tua risposta e pubblica un codice più conciso? Il tuo codice è pieno di piccoli dettagli e ritocchi non necessari per comprendere la domanda. –

+0

thx per l'avviso, ho cancellato il codice un po 'per una facile comprensione –

risposta

5

ho trovato nella documentazione di simpleschema, se qualcun altro avrebbe bisogno di una soluzione in seguito: si può solo controllare contro schema:

Meteor.methods({ 
    companyAdd: function (companyAttr) { 

    //here we check the data sent to method against the defined schema 
    check(companyAttr, Companies.simpleSchema()); 

    var currentDate = new Date(); 

    var company = _.extend(companyAttr, { 
     createdBy: user._id, 
     createdAt: currentDate 
    }); 

    var newCompanyId = Companies.insert(company); 
    return {_id: newCompanyId}; 
    } 
} 
Problemi correlati