Мангуста новая подмассива схемы Post с помощью ng-select - PullRequest
0 голосов
/ 07 октября 2018

У меня есть эта схема:

    const userSchema = new Schema({
        email: String,
        skills: {
            name: String,
            label: String
        }
    })
    module.exports = mongoose.model('user', userSchema, 'users')

Использование ng-select в HTML, например:

    <ng-select [items]="options" bindLabel="label" bindValue="value" 
       [addTag]="addCustomSkill" [multiple]="true" 
       placeholder="Select Skills" [(ngModel)]="registerUserData.skills"
       name="skills">
    </ng-select>

И я хочу опубликовать в mLab следующим образом:

  registerUser() {
    this._auth.registerUser(this.registerUserData)
      .subscribe(
        res => console.log(res),
        err => console.log(err)
      )
  }

Консоль будет регистрировать электронную почту, но не навыки.

и, конечно, mLab поместит только электронную почту

Обновление:

Мне удалось заставить его работать, изменив навыки на

skills: Array,

и:

name="skills[]"

Но он будет публиковать без ключа подмассив, только значение вроде:

"skills": [
    "JAVA"
],

Я хочу, чтобы это было:

"skills": [
    "name": "JAVA"
    "label": "JAVA"

],

1 Ответ

0 голосов
/ 07 октября 2018

Попробуйте также создать схему для вашего объекта умения и используйте ее так:

const skillSchema = new Schema({
    name: String,
    label: String
});
const userSchema = new Schema({
    email: String,
    skill: skillSchema
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...