2015-10-10 15 views
5

Vorrei ordinare il mio Group -Modello dal name del departure_country con mangimi-paginate e NodeJS.ordinamento mongoose-paginate con documento di riferimento

mio Group-Schema:

var GroupSchema = new Schema({ 
     name: String, 
     flight_date: Date, 
     .... 
     departure_country: {type: Schema.ObjectId, ref: 'Country'}, 
     .... 
    }); 

Il Paese-Schema:

var CountrySchema = new Schema({ 
    name: String, 
    code: String, 
}); 

Utilizzando la sortBy -opzione di sorta Mongoose-paginate da parte del paese del _ids e I don' so come dirlo per ordinare dal name.

+0

Come si applica 'sortBy'? –

+0

'sortBy ({departure_country: -1})' adesso – molerat

+0

Hai provato '{" departure_country.name ": -1}'? –

risposta

0

come si fa a rendere il prefisso nazionale il _id di Country-Schema?

poi departure_country: {type: String, ref: 'Country'}

Questo potrebbe in realtà essere un progetto migliore. Country-Schema s _id sarebbe di piccole dimensioni e i codici paese non dovrebbero avere collisioni. Anche in GroupSchema si utilizzerà meno spazio per memorizzare la "chiave esterna" departure_country.

quindi sarebbe in grado di ordinare per departure_country e c'è una possibilità che l'ordinamento sarebbe anche valido per il nome del paese.

+0

a volte ho bisogno di visualizzare o persino ordinare con il nome di anche il paese – molerat

+0

@molerat non pensa che ci sia un modo per farlo dal momento che stai popolando. dovresti farlo sul lato nodejs. http://underscorejs.org ha buone funzioni per questo. sortBy o anche groupBy potrebbe essere utile. – kio

+0

Se si ottengono 50 di 10000 voci e si ordinano solo quelle, non si otterrà lo stesso risultato come se si ordinasse 10000 e quindi si selezionasse 50. – molerat

Problemi correlati