我正在使用 MEAN STACK 開發一個小型 CRUD 應用程式:
- 我有一個表格可以讓我在 mongodb 中保存一本書的資訊
- 當我提交時,我發現我在資料庫中保存了 ObjectID 和 __v : 0 而不是書的詳細資訊!這是我的代碼:
后端:
booksRoute.route('/post').post((req,res,next)=>{
var x = {
name : req.params.name,
genre : req.params.genre,
author : req.params.author,
rating : req.params.rating,
price : req.params.price
}
console.log(x) ;
BookModel(x).save((err,x)=>{
if (err){console.log(err);}
else res.send(x) ;
}) ;
})
貓鼬模型
const mongoose = require('mongoose') ;
const Schema = mongoose.Schema ;
let books = new Schema({
name:{
type:String
},
genre:{
type:String
},
author:{
type:String
},
rating:{
type:Number
},
price:{
type:Number
}
},{
collection: 'booklist'
})
module.exports = mongoose.model('books',books) ;
前端
<ul>
<form #f="ngForm" (ngSubmit)="onSubmit(f)">
<li>
<label>book's name *</label>
<input name="name" type="text" ngModel>
</li>
<li>
<label>book's genre *</label>
<input name="genre" type="text" ngModel>
</li>
<li>
<label>book's author *</label>
<input name="author" type="text" ngModel>
</li>
<li>
<label>rating *</label>
<input name="rating" type="number" [max]="10" min="0" ngModel>
</li>
<li>
<label>price *</label>
<input name="price" type="number" ngModel>
<input type="submit"/>
</li>
</form>
</ul>
觸發后端保存檔案的函式
onSubmit(f){
//console.log(f.value) ;
this.apiService.postBook(f.value).subscribe( res => {console.log('the back response:',res)}) ;
}
服務
//post book
postBook(data){
console.log(data) ;
return this.http.post(this.backendUrl '/post',data) ;
}
uj5u.com熱心網友回復:
我認為你的問題是你試圖從而req.params不是req.body
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/368870.html
上一篇:如何解決symfony5.3.10中的自動裝配問題?
下一篇:匹配條件一段時間后洗掉檔案?
