мне нужно работать с такой записью mongodb:
{
"_id": {
"$oid": "5c09ae281646e8d8bad07d73"
},
"name": "somename",
"genre": "somegenre",
"indexes": {
"index1": 1,
"index2": 7,
"index3": 7,
"index4": 7,
"index5": 7,
"index6": 7,
"index7": 7,
"index8": 7,
"index9": 7,
"index10": 7,
"index11": 7,
"index12": 9,
"index13": 5,
"index14": 15,
"index15": 8,
"index16": 17
},
"date": {
"$date": "2018-12-06T23:18:00.532Z"
},
"__v": 0
}
И я задаю схему для mongoose вот так
const ItemSchema = new Schema({
name: {
type: String,
required: true
},
genre: {
type: String,
required: true
},
indexes: {
type: Object,
required: true,
properties: {
index1: {
type: Number,
required: true
},
index2: {
type: Number,
required: true
},
index3: {
type: Number,
required: true
},
index4: {
type: Number,
required: true
},
index5: {
type: Number,
required: true
},
index6: {
type: Number,
required: true
},
index7: {
type: Number,
required: true
},
index8: {
type: Number,
required: true
},
index9: {
type: Number,
required: true
},
index10: {
type: Number,
required: true
},
index11: {
type: Number,
required: true
},
index12: {
type: Number,
required: true
},
index13: {
type: Number,
required: true
},
index14: {
type: Number,
required: true
},
index15: {
type: Number,
required: true
},
index16: {
type: Number,
required: true
}
}
},
их мой пост роутера (экспресс)
router.post("/", (req, res) => {
const newItem = new Item({
name: req.body.name,
genre: req.body.genre,
indexes: {
index1: req.body.indexes.index1,
index2: req.body.indexes.index2...
их входы для установки значений индекса (где я использую свойство name, чтобы определить, как я буду устанавливать новый элемент):
<input
type="text"
name="indexes.index1"
placeholder="sample 1"
onChange={this.onChange}
/>
и функции
onChange = e => {
this.setState({ [e.target.name]: e.target.value });
};
и
onSubmit = e => {
const newItem = {
name: this.state.name,
genre: this.state.genre,
indexes: {
index1: this.state.indexes.index1,
...
результат их в MongoDB:
{
"_id": {
"$oid": "5c0c22d41e3d5115dda930aa"
},
"name": "name",
"genre": "somegen",
"indexes": {
"index1": "",
"index2": ""
нет значений в индексах Есть идеи?предложения?
Спасибо, ребята.Seba