0
コンポーネントに在庫があるかどうか(チェックボックスがチェックされているかどうか)、または在庫(この場合、前と同じチェックボックスはチェックされていません)。ノードJsサーバのチェックボックスの状態を取得
ここでは、フォームの:
<form action="/inventory/<%=ingredient._id%>?_method=PUT" method="POST" class="form">
<!-- <form class="formNew form" action="/inventory/<%=ingredient._id%>" method="POST" > -->
<div class="form-group">
<label>Ingredient's picture:</label>
<input type="text" name="item[photoName]" value="<%=ingredient.photoName%>" class="form-control">
</div>
<div class="form-group">
<label>Name:</label>
<input type="text" name="item[name]" value="<%=ingredient.name%>" class="form-control">
</div>
<div class="form-group">
<label>Number of items:</label>
<input type="number" name="item[number]" value="<%=ingredient.number%>" class="form-control" min="0">
</div>
<div class="form-group">
<div class="text-center"><label>Or check ingredient item:</label></div>
<%if(ingredient.exist){%>
<input class="form-control" type="checkbox" name="item[checkbox]" checked>
<% } else { %>
<input class="form-control" type="checkbox" name="item[checkbox]" unchecked>
<% } %>
</div>
<button class="text-center btn btn-success pull-right" type="submit">Save changes</button>
</form>
そして、ここで更新を扱う私のポストルート(ノードのJs)があります:
//更新ルート
app.put("/inventory/:id", function(req, res){
function(err, updatedIngredient){
var ingredientUpdated={
photoName:req.body.item["photoName"],
name:req.body.item["name"],
number:req.body.item["number"],
exist:req.body.item["checkbox"].checked
}
Ingredient.findByIdAndUpdate(req.params.id, ingredientUpdated, {new: true}, function(err, updatedIngredient){
if(err){
console.log(err);
} else {
console.log(updatedIngredient);
if(req.xhr){
res.json(updatedIngredient);
} else {
req.flash("success", "You successfully updated the Ingredient's info");
res.redirect("/inventory/" + req.params.id);
}
}
})
})
そして最後に、ここに私の成分のですスキーマモデル(mongoDb/mongoose):
var IngredientSchema = new mongoose.Schema({
name:String,
number:Number,
exist:Boolean,
author:{
id:{
type:mongoose.Schema.Types.ObjectId,
ref:'User'
},
username:String
},
photoName:String
})
しかし、私の実装はうまくいかず、次のようなエラーが表示されます: "未定義のプロパティが 'チェックされていません'
これを修正する方法は誰にも分かりますか?