繁体   English   中英

如何修剪猫鼬中的单词之间的空格?

[英]How to trim spaces between words in mongoose?

如何为我的数据库修剪猫鼬中的单词之间的空格? 让我们想象一个案例

const mongoose = require('mongoose');

mongoose.connect('mongodb://localhost:27017/TodoApp', { useNewUrlParser: true });

const Todo = mongoose.model('Todo', {
  text: {
    type: String,
    required: true,
    minlength: 1,
    trim: true
  }
});

const newTodo = new Todo({
  text: "   Cook     dinner   "
});

newTodo .save().then((doc) => {
  console.log('Saved todo', doc)
}).catch((e) => {
  console.log(e);
});

如果我运行此代码,我将在数据库中获取一个文本值为“”的文档。

"Cook     dinner"

但是我反而想得到

“做饭”

仅用猫鼬怎么能得到这种结果?

请检查docs中的trim()定义,似乎您正在尝试删除字符串中间的多余字符,但是trim()仅在字符串的开头和结尾删除它们( Mongo docs

我建议您为此定义一个自定义的setterdoc )或preSavedoc )钩子,并使用regex转换字符串(如果只想删除空格): str.replace( /\\s\\s+/g, ' ' )

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM