如何控制文件不在loopbak中获取或添加其他属性?

时间:2017-10-07 17:28:16

标签: mongodb loopbackjs loopback

我在loopback mongodb以上的注册模型中有以下属性:

"properties": {
    "Fname": {
      "type": "string",
      "required": true
    },
    "Lname": {
      "type": "string",
      "required": true
    },
    "phone": {
      "type": "string",
      "required": true
    },
    "date": {
      "type": "string",
      "required": true
    },
    "time": {
      "type": "string",
      "required": true
    }
  }

在应用程序中我发布了一些带有模型所需数据的附加数据,用于控制和处理服务器端:

submitForm() {

    let headers = new Headers(
      {
        'Content-Type': 'application/json'
      });
    let options = new RequestOptions({ headers: headers });

    let data = JSON.stringify({
      Fname: this.form.Fname,
      Lname: this.form.Lname,
      phone: this.form.phone,
      time: this.form.time,
      date: this.form.date,
      uid: this.form.uid
    });
    //console.log(data);

    let url = 'http://localhost:3000/api/registrations';

    return new Promise((resolve, reject) => {
      this.http.post(url, data, options)
        .toPromise()
        .then((response) => {
          console.log('API Response : ', response.status);
          resolve(response.json());
        })
        .catch((error) => {
          console.error('API Error : ', error.status);
          console.error('API Error : ', JSON.stringify(error));
          reject(error.json());
        });
    });
  }

在服务器端,我有这段代码:

 Registration.observe('before save', function (ctx, next) {
        if (ctx.instance) {
            // When Create (POST)
            // ctx.instance have the json properties
            console.log("Triggers when create");
            if (checkUID(ctx.instance) ==200 ){
                console.log('ok');
            }
        } else {
            // When Update (UPDATE)
            // ctx.data have the json properties
            console.log("Triggers when update");
        }
        next();
    });

但在成功注册后,我看到了uid已添加到文档中,无论模型的属性如何,文档都包含其他属性。

{
    "Fname": "Eram",
    "Lname": "SA",
    "phone": "1234567890",
    "date": "2017/10/06",
    "time": "17:37:46",
    "id": "59d78e3f5e5e6704205038aa",
    "uid": "38bc3241a43073a7b40d186f24923cc5"
  },

0 个答案:

没有答案