MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

NodeJS Mongo - Mongoose - Nama koleksi dinamis


Halo Anda hanya perlu mendeklarasikan model skema dengan nama dinamis Anda, seperti ini:

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

// our schema 

function dynamicSchema(prefix){
    var addressSchema = new Schema({
        dir : {type : String, required : true},    //los 2 nombres delimitados por coma (,) ej. Alberto,Andres
        city : {type : String, required: true},   //la misma estructura que para los nombres ej. Acosta, Arteta 
        postal : {type : Number, required : true},
        _home_type : {type : Schema.Types.ObjectId, required : true, ref : prefix + '.home_type'},
        state : {type : String, required : true},
        telefono : String,
        registered : {type : Date, default: Date.now }
    });
    return mongoose.model(prefix + '.address', addressSchema);
}

//no we export dynamicSchema function
module.exports = dynamicSchema;

jadi dalam kode Anda di mana saja Anda dapat melakukan ini:

var userAdress = require('address.js')(id_user);
var usrAdrs1 = new userAddress({...});
    userAdrs1.save();

Sekarang buka mongo shell &list collections Anda (gunakan mydb lalu tampilkan koleksi), Anda akan melihat koleksi baru untuk alamat dengan awalan uid. Dengan cara ini luwak akan membuat satu alamat koleksi baru untuk setiap uid pengguna yang berbeda.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Impor File CSV dari direktori untuk menyemai database di Rails

  2. Kueri gagal dengan kode kesalahan 13 dan pesan kesalahan 'tidak diotorisasi pada [db] untuk menjalankan perintah { temukan:

  3. Agregasi MongoDb $lookup dengan _id asing dalam array

  4. peta mongoDB/pengurangan dikurangi pengurangan

  5. pymongo:MongoClient atau Koneksi