2016-10-05 2 views
2

Я думал об использовании cuid (https://www.npmjs.com/package/cuid), чтобы заменить естественные объекты объекта mongoose, так что _id в моей модели получит скорее cuid, чем сгенерированный.Использование cuid для замены mongoose ObjectIds

Вопросы:

  1. Как вы этого добиться
  2. Есть ли какие-либо побочные эффекты
  3. Как это повлияет на население ??

Является 1 просто:

import mongoose from 'mongoose'; 
import cuid from 'cuid'; 

const Schema = mongoose.Schema; 

export const departmentSchema = new Schema({ 
    _id: { type: 'String', default: cuid(), required: true }, 
    name: { type: 'String', required: true }, 
    sector: { type: 'String', required: true }, 
}); 

??

Благодаря

ответ

0

я имел успех, используя следующие использовать CUID вместо _id:

import mongoose from 'mongoose'; 
import cuid from 'cuid'; 

const gymSchema = new Schema({ 
    _id: { type: 'String', required: true, default: cuid }, 
}): 

Разница в том, что я просто передать эту функцию, в то время как вы вызываете функцию. Я сделал эту ошибку сначала ...

Я могу подтвердить, что население работает так, как ожидалось, но вопрос, на который я не могу ответить, есть ли какие-либо побочные эффекты. И, возможно, что более важно, почему вы хотели бы это сделать. mern.io использует CUID вместо ObjectId, но они делают это неловко в другом поле. Я не знаю, почему ObjectId s не подходят. Кто угодно?

Смежные вопросы