How to use the mongoose.model function in mongoose

To help you get started, we’ve selected a few mongoose examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github saintedlama / passport-local-mongoose / test / alternative-query-field.js View on Github external
it('should authenticate an existing user by default username field', function(done) {
    const UserSchema = new Schema({
      email: String
    });
    UserSchema.plugin(passportLocalMongoose, {iterations: 1, usernameQueryFields: ['email']}); // 1 iteration - safes time in tests
    const User = mongoose.model('AuthenticateDefaultField', UserSchema);

    const email = 'hugo@test.org';
    const user = new User({username: 'hugo', email: email});
    User.register(user, 'password', function(err) {
      expect(err).to.not.exist;

      User.authenticate()('hugo', 'password', function(err, user, error) {
        expect(err).to.not.exist;
        expect(user).to.exist;
        expect(!error).to.exist;

        done();
      });
    });
  });
github fivesixty / notepages / server.js View on Github external
refprint: true,
  github_flavouring: true
});

// Mongoose connection and Model

mongoose.connect('mongodb://localhost/techpages');

var PageSchema = new mongoose.Schema({
  iden : { type: String, index: { unique: true } },
  text : String,
  hash : String
});
mongoose.model('Page', PageSchema);

var PageModel = mongoose.model('Page');

// Utility functions for generating random URL and mobile detection

function rstring(len) {
  var text = "", possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
  for( var i=0; i < len; i++ ) {
    text += possible.charAt(Math.floor(Math.random() * possible.length));
  }
  return text;
}

function isMobileBrowser(useragent) {
  return (/android|avantgo|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od|ad)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(useragent)
  ||
  /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|e\-|e\/|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|xda(\-|2|g)|yas\-|your|zeto|zte\-/i.test(useragent.substr(0,4)));
}
github rvvergara / advanced-web-developer-bootcamp-notes-examples-and-exercises / Section34-37-Warbler-Final-Project / warbler / warbler-server / models / message.js View on Github external
messageSchema.pre("remove",async function(next){
    try{
    // find a user
    let user =  await User.findById(this.user);
    // remove id of the message from their messages list/array
    user.message.remove(this.id);
    // save that user and return next
    await user.save();
    return next();
    }catch(err){
        return next(err);
    }

})

module.exports  =   mongoose.model("Message",messageSchema);
github zishon89us / node-cheat / random / small_tasks / twitter-facebook-auth-data / app / models / user.js View on Github external
socialType: {type: String, default: null} //facebook or twitter
    }
});

// generating a hash
userSchema.methods.generateHash = function (password) {
    return bcrypt.hashSync(password, bcrypt.genSaltSync(8), null);
};

// checking if password is valid
userSchema.methods.validPassword = function (password) {
    return bcrypt.compareSync(password, this.local.password);
};

// create the model for users and expose it to our app
module.exports = mongoose.model('User', userSchema);
github TeamMJM / SpionIO / database / model / clientModel.js View on Github external
const mongoose = require("mongoose");
const Schema = mongoose.Schema;
const Site = require('./siteModel.js');

const clientSchema = Schema({
    _id: Number,
    name: String,
    password: String,
    mail: String,
    siteID: [{type:Schema.Types.ObjectId, ref:'Site'}]
});

let Client = mongoose.model('Client', clientSchema,'Clients');

module.exports = Client;
github vpdb / server / src / controllers / api / games.js View on Github external
* You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 */

'use strict';

const _ = require('lodash');
const fs = require('fs');
const util = require('util');
const logger = require('winston');
const generate = require('project-name-generator');

const Game = require('mongoose').model('Game');
const GameRequest = require('mongoose').model('GameRequest');
const Release = require('mongoose').model('Release');
const Star = require('mongoose').model('Star');
const Rom = require('mongoose').model('Rom');
const LogEvent = require('mongoose').model('LogEvent');
const Backglass = require('mongoose').model('Backglass');
const Medium = require('mongoose').model('Medium');

const GameSerializer = require('../../serializers/game.serializer');
const GameRequestSerializer = require('../../serializers/game_request.serializer');
const ReleaseSerializer = require('../../serializers/release.serializer');
const BackglassSerializer = require('../../serializers/backglass.serializer');
const MediumSerializer = require('../../serializers/medium.serializer');

const api = require('./api');

const acl = require('../../acl');
const fileModule = require('../../modules/file');
github Valdjr / team-organizer-backend / src / routes / settings.js View on Github external
const express = require("express");
const router = express.Router();
const mongoose = require("mongoose");
const empty = require("is-empty");
require("../models/Settings");
require("../models/Roles");
const Settings = mongoose.model("settings");
const Roles = mongoose.model("roles");

router.get(["/", "/:id"], async (req, res) => {
  const { id } = req.params;
  const { filter, search, sort } = req.query;

  const reg = new RegExp("^" + (!empty(search) ? search : ""));
  const filterBy = !empty(id)
    ? { _id: id }
    : !empty(filter)
    ? { [filter]: reg }
    : {};

  let settings = await Settings.find(filterBy)
    .populate("role_id")
    .catch(err => {
github charliecalvert / JsObjects / Data / MongooseMagic / ParseMagic.js View on Github external
*    }, etc
 * }
 */

var setSchema = mongoose.Schema({
    name: String,
    code: String,
    gathererCode: String,
    magicCardsInfoCode: String,
    releaseDate: String,
    border: String,
    type: String,
    booster: [String]
});

var Set = mongoose.model('magic-set', setSchema);
var connected = false;
var totalSetsSaved = 0;
var setNames = [];

function doConnection() {
    var baseUrl = 'mongodb://';
    var userName = 'csc';
    var password = 'Re*lD*t*22#';
    var siteAndPort = 'ds049848.mongolab.com:49848';
    var databaseName = 'elvenlab01';
    var url =
        baseUrl +
        userName +
        ':' +
        password +
        '@' +
github ethereumclassic / explorer / db.js View on Github external
Transaction.index({ to: 1, blockNumber: -1 });
Transaction.index({ creates: 1, blockNumber: -1 });
Account.index({ balance: -1 });
Account.index({ balance: -1, blockNumber: -1 });
Account.index({ type: -1, balance: -1 });
Block.index({ miner: 1 });
Block.index({ miner: 1, blockNumber: -1 });
Block.index({ hash: 1, number: -1 });
Market.index({ timestamp: -1 });
TokenTransfer.index({ blockNumber: -1 });
TokenTransfer.index({ from: 1, blockNumber: -1 });
TokenTransfer.index({ to: 1, blockNumber: -1 });
TokenTransfer.index({ contract: 1, blockNumber: -1 });

mongoose.model('BlockStat', BlockStat);
mongoose.model('Block', Block);
mongoose.model('Account', Account);
mongoose.model('Contract', Contract);
mongoose.model('Transaction', Transaction);
mongoose.model('Market', Market);
mongoose.model('TokenTransfer', TokenTransfer);
module.exports.BlockStat = mongoose.model('BlockStat');
module.exports.Block = mongoose.model('Block');
module.exports.Contract = mongoose.model('Contract');
module.exports.Transaction = mongoose.model('Transaction');
module.exports.Account = mongoose.model('Account');
module.exports.Market = mongoose.model('Market');
module.exports.TokenTransfer = mongoose.model('TokenTransfer');

mongoose.Promise = global.Promise;
mongoose.connect(process.env.MONGO_URI || 'mongodb://localhost/explorerDB', {
  useMongoClient: true