Loading [MathJax]/jax/output/HTML-CSS/fonts/TeX/fontdata.js

var express = require("express");
var bodyParser = require("body-parser");
var   User = require("./models/user").User; // De esta  manera accedemos al objeto al momento de ser exportado
var app = express();
app.use("/public",express.static("public"));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: true}));
//app.use(express.static("assets"));
app.set("view engine","jade");

app.get("/", function (req, res) {
     res.render("index");
});
app.get("/signup",function(req, res){
        User.find(function(err,doc){
              console.log(doc);
              res.render("signup");
        });

});

app.get("/login",function(req, res){
      res.render("login");
});


app.post("/users",function(req, res){
        var user = new User({
                                              email: req.body.email,
                                              password:  req.body.pass,
                                              password_confirmation: req.body.password_confirmation,
                                              username: req.body.username
                                            });

        // Promise
        user.save().then(function(us){
                res.send("Guardamos el Usuario exitosamente");
        },function(err){
              if (err){
                  console.log(String(err));
                    res.send("No Pudimos Guardar la información");
              }
        });
});


// Metodo FIND()
app.post("/sessions", function(req, res){
        // El primer parametros que pasamos es el query y el segundo son los  campos que nos quiere que
        // nos devuelva del socumenro que estamos extrayendo y despues pasamos un callback

        // findID
        /*user.findId("5980f68b8f9d2e2004f76a0d", function(err, docs){
              console.log(docs);
        })*/
        User.findOne({email:req.body.email, password:req.body.pass },function(err, docs){
              console.log(docs);
              res.send("Hola mundo");
        });
});


app.listen(8080);
 

var express = require("express");
var Imagen = require("./models/imagenes");
var router = express.Router();
var image_finder_middleware = require("./middlewares/find_image");

router.get("/",function(req,res){
      /*Buscar usuario*/
      res.render("app/home");
});

/* Arquitectura REST */
/*    imagenes/new => Nos sirve para mostrar el formulario  */
router.get("/imagenes/new", function(req, res){
        res.render("app/imagenes/new");
});

//  exportamos la funcion middlewares que nos servira para optimizar las funciones
router.all("/imagenes/:id*", image_finder_middleware);

/*  imagenes/:id/edit => Va desplegar un formulario de una imagen ya existente  que nos permite editar dicha imagen */
router.get("/imagenes/:id/edit", function(req, res){
      res.render("app/imagenes/edit");
});

// imagen individual
/*
      Se pasa la url y el id de la  y despues anidams y concatenamos una serie de funciones que s
      pueden aplicar para este recurso.
      /imagenes/:id => Mostrar la imagen que nos solicito el usuario por el id
*/
router.route("/imagenes/:id")
.get(function(req,res){
      res.render("app/imagenes/show");
  })

/* Lo que hace put es actualizar esta imagen que nos manda el usuario*/
.put(function(req, res){
      res.locals.imagen.title = req.body.title;
      res.locals.imagen.save(function(err){
            if (!err){
                res.render("app/imagenes/show");
            }else {
                res.render("app/imagenes/"+req.params.id+"/edit");
            }
      })
})

/* Lo que hace delete es eliminar esta imagen que nos manda el usuario*/
 .delete(function(req,res){
        Imagen.findOneAndRemove({_id:req.params.id}, function(err,imagen){
              if(!err){
                    res.redirect("/app/imagenes");
              }else {
                    console.log(err);
                      res.redirect("/app/imagenes"+req.params.id);
              }
        })
});

/*Colección de imagenes
      Obetenemos todas las imagenes
*/
router.route("/imagenes")
.get(function(req,res){
        Imagen.find({},function(err,imagenes){
              if(err){ res.redirect("/app"); return; }
                res.render("app/imagenes/index", {Imagenes: imagenes});
        });
})

// Función para guardar la imagen
.post(function(req,res){
    var data = {
          title: req.body.title
    }
    var imagen = new Imagen(data);

    // Asincronamente ya se puede guardar la imagen
    imagen.save(function(err){
          if(!err){
                res.redirect("/app/imagenes/"+imagen._id);
                console.log(imagen);
          }else {
                res.render(err);
          }
    });

});

module.exports = router;
 

mongodb - mongoose - node js

FREDYS  FERNANDEZ
Module by FREDYS FERNANDEZ, updated more than 1 year ago
No tags specified