Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var express = require('express');
- var app = express();
- var mongoose= require('mongoose');
- var User = require('./app/models/user');
- //logs
- var logs = {};
- function log(key, value){
- logs[key]=value;
- }
- //app configuration
- var ipaddr = process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1';
- var port = process.env.OPENSHIFT_NODEJS_PORT || 8080;
- //mongodb configuration
- var mongoHost = process.env.OPENSHIFT_MONGODB_DB_HOST || 'localhost';
- var mongoPort = process.env.OPENSHIFT_MONGODB_DB_PORT || 27017;
- var mongoUser = process.env.OPENSHIFT_MONGODB_DB_USERNAME; //mongodb username
- var mongoPass = process.env.OPENSHIFT_MONGODB_DB_PASSWORD; //mongodb password
- var mongoDb = process.env.OPENSHIFT_APP_NAME; //mongodb database name
- //connection strings
- var mongoString = 'mongodb://' + mongoUser + ':' + mongoPass + '@' + mongoHost + ':' + mongoPort + '/' + mongoDb;
- mongoose.connect(mongoString, function(err) {
- if (err) {
- log('createConnection err',err);
- }
- });
- var chris = new User({
- name: 'Chris',
- username: 'sevilayha',
- password: 'password'
- });
- log('chris',chris);
- chris.dudify(function(err, name) {
- if (err) throw err;
- log('Your new name is ' + name);
- });
- app.get('/db', function(req, res) {
- User.find({ username: 'sevilay' }, function(err, user) {
- if (err) throw err;
- if(user[0] == null){
- chris.save(function(err) {
- if (err) {
- log('User saved successfully!',err);
- throw err;
- }
- });
- } else {
- // object of the user
- log('search result',user);
- }
- });
- });
- app.get('/logs', function(req, res) {
- res.status(200).send(logs);
- });
- // app is running!
- app.get('/', function(req, res) {
- res.status(200).send('OK');
- });
- app.get('/mongo', function(req, res) {
- User.find({ username: 'sevilayha'}, function(err, data){
- if (err) {
- log('User.find err',err);
- res.status(500).send('NOT OK' + JSON.stringify(err));
- } else {
- log('user.find data',data);
- res.status(200).send(JSON.stringify(data));
- }
- });
- });
- app.listen(port, ipaddr);
- var mongoose = require('mongoose');
- var Schema = mongoose.Schema;
- var userSchema = new Schema({
- name: String,
- username: { type: String, required: true, unique: true },
- password: { type: String, required: true },
- admin: Boolean,
- location: String,
- meta: {
- age: Number,
- website: String
- },
- created_at: Date,
- updated_at: Date
- });
- userSchema.methods.dudify = function() {
- this.name = this.name + '-dude';
- };
- // on every save, add the date
- userSchema.pre('save', function(next) {
- var currentDate = new Date();
- this.updated_at = currentDate;
- if (!this.created_at) this.created_at = currentDate;
- next();
- });
- var User = mongoose.model('User', userSchema);
- module.exports = User;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement