0.0.14 • Published 10 years ago

mongoose-schema-registry v0.0.14

Weekly downloads
57
License
-
Repository
-
Last release
10 years ago

mongoose-schema-registry

The Mongoose Schema Registry allows developers to register schemas without creating a mongoose model. This allows extension of schemas later on prior to registering those models.

The following quick example should help you get started (taken from the ghiraldi framework mvc.js file):

    File1.js
    // First, declare the registry object.
    var registry = require('mongoose-schema-registry'),

    // The registry fires events when schemas are added.
    registry.on('add', function(tag, schema) {
        // tag contains the name you gave the schema when you added it.
        // schema is the actual schema added.
    });
    
    // Add a schema to the registry using the add method
    registry.add('schema_name', schema);

You can modify an existing schema by calling the getSchema method. Since the registry is a singleton, requiring will give you the same object with the already registered schemas.

    // File2.js
    var registry = require('mongoose-schema-registry');
    
    var testSchema = registry.getSchema('testSchema');
    // From here, you can add things to your test schema.
    ..
    // When you're done, just re-add the schema.  The new one will clobber 
    // the old one.
    registry.add('testSchema', testSchema);

To finally register the schemas into mongoose models, just iterate through the schemas and call the mongoose.model method.

    var keys = registry.getKeys();
    _.each(keys, function(key, index, list) {
        var thisSchema = registry.getSchema(key);
        mongoose.model(key,  thisSchema);
    });
0.0.14

10 years ago

0.0.13

10 years ago

0.0.12

10 years ago

0.0.11

10 years ago

0.0.10

12 years ago

0.0.9

12 years ago

0.0.8

12 years ago

0.0.7

12 years ago

0.0.6

12 years ago

0.0.5

12 years ago

0.0.4

12 years ago

0.0.3

12 years ago

0.0.2

12 years ago

0.0.1

12 years ago