Пользовательские / рассчитанные атрибуты Sails js не работают, используя код из документов sails

У меня есть эта модель, которая взята с этой страницы документации паруса

module.exports = {

    attributes: {
    // Primitive attributes
    firstName: {
      type: 'string',
      defaultsTo: ''
    },
    lastName: {
      type: 'string',
      defaultsTo: ''
    },

    // Attribute methods
    getFullName: function (){
      return this.firstName + ' ' + this.lastName;
    }
  }
};

Что я ожидаю, когда я называю мой автоматически сгенерированный успокоительный API (используя план)

локальный: порт / ResourceName

является

{"firstName":"john", "lastName":"Doe", "getFullName": "john Doe"}

вместо этого я получаю это

{"firstName":"john", "lastName":"Doe"}

есть идеи?

Я уже проверил другие сообщения, такие как этот GitHub.

Версия паруса: 0.11.4

Большое спасибо:)

1 ответ

Решение

Если вы хотите, чтобы пользовательский атрибут был сериализован, вы можете переопределить метод экземпляра toJSON по умолчанию:

toJSON: function() {
  var obj = this.toObject();
  obj.fullName = this.getFullName();
  return obj;
}
Другие вопросы по тегам