Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

141
Vistas
sailsjs model property of type object, possible?

The following is my sails model, whenever I try to save() I get the following error

[Error: Unknown rule: address]

Use to have similar models with mongoose, without any issues, could anybody see any mistakes in my model?

Thanks!

/**
 * Users.js
 *
 * @description :: TODO: You might write a short summary of how this model works and what it represents here.
 * @docs        :: http://sailsjs.org/documentation/concepts/models-and-orm/models
 */

module.exports = {

  connection: 'MongoServer',

  attributes: {
       AcctSessionId: {type: 'string', required: false, default: ''},
       UserName: {type: 'string', required: true, unique: true},
       UserPassword: {type: 'string', required: true},
       AcctStartDelay: {type: 'string', required: false, default: ''},
       AcctStopDelay:{type: 'string', required: false, default: ''},
       AcctPlan: {type: 'string', required: false, default: ''},
       AcctResellerID: {type: 'string', required: false, default: ''},
       AcctPrice: {type: 'integer', required: false, default: ''},
       AcctCurrency: {type: 'string', required: false, default: 'LBP'},
       AcctEnabled: {type: 'boolean', required: false, default: true},
       AcctExpiry: {type: 'boolean', required: true},

      meta: {
        address: {type: 'string', required: false, default: ''},
        city: {type: 'string', required: false, default: ''},
        mobile: {type: 'integer', required: true, default: ''},
        email: {type: 'string', required: false, default: ''},
        name: {type: 'string', required: true, default: ''}
      }

  }
};
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

You cannot nest data like that using Sails/Waterline ORM. The issue is with the meta : {} bit. So as far as sails is concerned, you have defined an attribute called meta, and are trying to apply a rule (such as type : 'string') called address, city, mobile, email etc, and these are not valid rules.

I suggest you either create a new model called address, or userMeta or something similar, and put address, city, mobile, email etc in there. Then associate them, or, just get rid of the meta : {} wrapper altogether and have it as such....

/**
* Users.js
*
* @description :: TODO: You might write a short summary of how this model works and what it represents here.
* @docs        :: http://sailsjs.org/documentation/concepts/models-and-orm/models
*/

module.exports = {

   connection: 'MongoServer',

    attributes: {
        AcctSessionId: { type: 'string', required: false, default: '' },
        UserName: { type: 'string', required: true, unique: true },
        UserPassword: { type: 'string', required: true },
        AcctStartDelay: { type: 'string', required: false, default: '' },
        AcctStopDelay: { type: 'string', required: false, default: '' },
        AcctPlan: { type: 'string', required: false, default: '' },
        AcctResellerID: { type: 'string', required: false, default: '' },
        AcctPrice: { type: 'integer', required: false, default: '' },
        AcctCurrency: { type: 'string', required: false, default: 'LBP' },
        AcctEnabled: { type: 'boolean', required: false, default: true },
        AcctExpiry: { type: 'boolean', required: true },

        address: { type: 'string', required: false, default: '' },
        city: { type: 'string', required: false, default: '' },
        mobile: { type: 'integer', required: true, default: '' },
        email: { type: 'string', required: false, default: '' },
        name: { type: 'string', required: true, default: '' }
    }
};

See sails attributes for what you can or can't put in a model description

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda