3bdoYasser / simple-test

0 stars 0 forks source link

OpenStack-ai: test #5

Open 3bdoYasser opened 11 months ago

3bdoYasser commented 11 months ago

create nodejs project with MVC architecture.

openstack-ai[bot] commented 11 months ago

create branchs...

CREATE package.json

{
  "name": "simple-test",
  "version": "1.0.0",
  "description": "",
  "main": "app.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "express": "^4.17.1"
  }
}

CREATE app.js

const express = require('express');
const app = express();
const port = 3000;

app.get('/', (req, res) => {
  res.send('Hello World!')
});

app.listen(port, () => {
  console.log(`App listening at http://localhost:${port}`)
});

CREATE controllers/userController.js

exports.index = function(req, res) {
    res.send('NOT IMPLEMENTED: Site Home Page');
};

CREATE routes/userRoute.js

var express = require('express');
var router = express.Router();

// Require controller modules.
var user_controller = require('../controllers/userController');

router.get('/', user_controller.index);

module.exports = router;

UPDATE app.js

const express = require('express');
const userRouter = require('./routes/userRoute');
const app = express();
const port = 3000;

app.use('/users', userRouter);

app.get('/', (req, res) => {
  res.send('Hello World!')
});

app.listen(port, () => {
  console.log(`App listening at http://localhost:${port}`)
});

CREATE models/userModel.js

var mongoose = require('mongoose');

var Schema = mongoose.Schema;

var UserSchema = new Schema(
  {
    name: {type: String, required: true, max: 100},
    email: {type: String, required: true, max: 100},
  }
);

// Export model.
module.exports = mongoose.model('User', UserSchema);