La validación única de la línea de flotación no se detecta hasta el próximo servidor SailSjs.

StackOverflow https://stackoverflow.com//questions/23000494

  •  20-12-2019
  •  | 
  •  

Pregunta

Estoy usando sails @ beta.

Estoy tratando de crear varios modelos de habitaciones (véase la definición) a continuación, el problema es que puedo crear con éxito modelos de habitaciones con el mismo atributo 'nombre', aunque el 'nombre' atribuíe tiene una validación única.

La validación no se detecta hasta el próximo reinicio del servidor 'Sails' , entonces obtengo esta salida:

C:\eMali_dev\server>sails lift

info: Starting app...

Express midleware for passport
Waterline encountered a fatal error when trying to perform the `alter` auto-migration strategy.
In a couple of seconds, the data (cached in memory) will be logged to stdout.
(a failsafe put in place to preserve development data)

In the mean time, here's the error:

Error (E_UNKNOWN) :: Encountered an unexpected error:
MongoError: E11000 duplicate key error index: eMali_beta_dev.room.$name_1  dup key: { : "e1" }
Details:
{ error: 'E_UNKNOWN',
  summary: 'Encountered an unexpected error',
  status: 500,
  raw: 'MongoError: E11000 duplicate key error index: eMali_beta_dev.room.$name_1  dup key: { : "e1" }' }


================================
Data backup:
================================

[ { name: 'e1',
    center: '53471e2318b931dc1b69f3a8',
    min_age: 1,
    max_age: 6,
    createdAt: Fri Apr 11 2014 00:41:39 GMT+0200 (W. Europe Summer Time),
    updatedAt: Fri Apr 11 2014 00:41:39 GMT+0200 (W. Europe Summer Time),
    _id: { _bsontype: 'ObjectID', id: 'SG\u001e#\u001811Ü\u001bióc' } },
  { name: 'e2',
    center: '53471e2318b931dc1b69f3a8',
    min_age: 1,
    max_age: 7,
    createdAt: Fri Apr 11 2014 00:41:39 GMT+0200 (W. Europe Summer Time),
    updatedAt: Fri Apr 11 2014 00:41:39 GMT+0200 (W. Europe Summer Time),
    _id: { _bsontype: 'ObjectID', id: 'SG\u001e#\u001811Ü\u001bióª' } },
  { name: 'e1',
    center: '53471e2318b931dc1b69f3a8',
    min_age: 1,
    max_age: 6,
    createdAt: Fri Apr 11 2014 00:41:39 GMT+0200 (W. Europe Summer Time),
    updatedAt: Fri Apr 11 2014 00:41:39 GMT+0200 (W. Europe Summer Time),
    _id: { _bsontype: 'ObjectID', id: 'SG\u001e#\u001811Ü\u001bió«' } } ]
error: A hook (`orm`) failed to load!

Modelo de habitación:

module.exports = {

    schema: true,

    attributes: {

        name: {
            type: 'string',
            required: true,
            unique: true,
            minLength: 3
        },

        center: {
            model: 'center'
        },

        min_age: {
            type: 'integer',
            required: true
        },

        max_age: {
            type: 'integer',
            required: true
        }
    }
}

¿Fue útil?

Solución

Este fue un error en velas y fue arreglado.Gracias a todos

Otros consejos

Debe cambiar la base de datos de la base de datos de disco predeterminada a una base de datos de su elección. Me enfrenté un problema similar y cambiaba de la base de datos de "Disco" a "MongoDB" arreglado mi problema. Parece que la base de datos predeterminada no puede hacer cumplir la restricción única.

Espero que resuelva su problema.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top