Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var http = require("http");
- var mongoose = require('mongoose');
- mongoose.connect('mongodb://localhost/workshop-criciuma');
- var db = mongoose.connection;
- db.on('error', function(err){
- console.log('Erro de conexao.', err)
- });
- db.once('open', function () {
- console.log('Conexão aberta.')
- });
- var Schema = mongoose.Schema;
- var BeerSchema = new Schema({
- name: { type: String, default: '' },
- description: { type: String, default: '' },
- alcohol: { type: Number, min: 0},
- price: { type: Number, min: 0},
- category: { type: String, default: ''},
- created: { type: Date, default: Date.now }
- });
- var Beer = mongoose.model('Beer', BeerSchema);
- var cb = function(err, data, res, msg){
- var _msg = msg;
- if (err){
- _msg = 'Erro: '+ err;
- }
- console.log(_msg);
- res.end(_msg);
- }
- http.createServer(function(req, res) {
- res.writeHead(200, {"Content-Type": "text/plain;charset=utf8"});
- var url = req.url;
- // res.write('Hello World');
- console.log('URL: ', url);
- switch(url){
- case '/create':
- var dados = {
- name: 'Skol',
- description: 'Mijo de Rato',
- alcohol: 4.5,
- price: 3,
- category: 'pilsen'
- }
- var model = new Beer(dados);
- model.save(function (err, data) {
- var msg = 'Cerveja '+data.name+' cadastrada com sucesso';
- cb(err, data, res, msg);
- });
- break;
- case '/retrieve':
- Beer.find({}, function (err, data) {
- var msg = 'Cervejas listadas: '+JSON.stringify(data);
- cb(err, data, res, msg);
- });
- break;
- case '/update':
- var query = {name: 'Skol'};
- var mod = {alcohol: 99};
- var optional = {
- upsert: false,
- multi: true
- };
- Beer.update(query, mod, function (err, data) {
- var msg = 'Cerveja '+query.name+' alterada com sucesso';
- cb(err, data, res, msg);
- });
- break;
- case '/delete':
- var query = {name: 'Skol'};
- Beer.remove(query, function(err, data) {
- var msg = 'Cervejas deletadas: '+data;
- cb(err, data, res, msg);
- });
- break;
- default:
- res.end('Rota não encontrada!');
- }
- }).listen(3000);
- console.log('Server running at http://localhost:3000/');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement