[Node.js] 學習筆記-設置路由和資料模型 (3)

前言

這是一個Node.js + Vue.js 使用MongoDB的學習筆記。

並不會有詳細的教學,因為這是筆記!!

需要對node.js和vue.js有基礎的認識才適合觀看。

學習資源:https://www.udemy.com/share/102an4AkUddV1XRnw=/

介紹

搭建一個測試入口以及註冊需要的資料模型。

建立一個路由

在專案裡建立一個routes的資料夾裡面在建立一個api資料夾,最後新增一個users.js檔案。

users.js:

//@login & register 
const express = require("express");
const router = express.Router();

router.get("/test",(req,res) => {
    res.json({msg:"login works"}) //為了方便知道進入test後,返回一個json data看是否有通
})

引用路由

再來是需要將當前這塊路由能夠使用必須先到server.js做引用。

server.js :

//引入users.js
const users = require("./routes/api/users");
//use routes
app.use("/api/users",users);

發生錯誤

到目前為止啟動服務會有錯,因為我們還要在users.js加上module讓server.js能夠引用成功。

users.js:

module.exports = router;

成功啟用

網址輸入:http://localhost:5000/api/users/test

成功顯示出{"msg":"login works"}就成功了。

補充-加入註解

users.js:

// $route GET api/users/test 
// @desc  return json data  //描述
// @access public						//此接口是公開還是私有
router.get("/test",(req,res) => {
    res.json({msg:"login works"}) //為了方便知道進入test後,返回一個json data看是否有通
})

建立模型存取資料

建立模型資料夾和js檔案

在專案裡建立一個資料夾models,在資料夾裡新增一個User.js文件。

引入mongoose及創建Schema

User.js:

const mongoose = require("mongoose");
const Schema = mongoose.Schema; //實例化Schema

//Create Schema
const UserSchema = new Schema({
    name:{
        type:String,
        required:true
    },
    email:{
        type:String,
        required:true
    },
    password:{
        type:String,
        required:true
    },
    avatar:{
        type:String,
    },
    date:{
        type:Date,
        default:Date.now
    }
})

module.exports = User = mongoose.model("users",UserSchema);

這樣模型就建造完畢了,接下來會在server.js做使用。