获取 TypeError:path.split 不是 Mongoose 中的函数
Posted
技术标签:
【中文标题】获取 TypeError:path.split 不是 Mongoose 中的函数【英文标题】:Getting TypeError: path.split is not a function in Mongoose 【发布时间】:2021-02-08 11:22:30 【问题描述】:错误:
node_modules\mongoose\lib\schema.js:1160 常量子路径 = path.split(/./g); ^
TypeError: path.split 不是函数 在 Schema.hasMixedParent (C:\Users\Travis\Desktop\Cop_Botv1\Cop_Site_Discord\node_modules\mongoose\lib\schema.js:1160:25) 在 Schema.path (C:\Users\Travis\Desktop\Cop_Botv1\Cop_Site_Discord\node_modules\mongoose\lib\schema.js:636:23) 在 C:\Users\Travis\Desktop\Cop_Botv1\Cop_Site_Discord\node_modules\mongoose\lib\document.js:2410:39
这个帖子发生了错误。
router.post('/', function(req, res, next)
let id = 'sdflksjdflksd';
let activated = false;
let end_date = '10/2';
let email = 'random@gmail.com'
let key = key_id: id, end_date: end_date, activated: false, email: email
Keys.create(key, (err, result) =>
if(err) console.log(err);
else
console.log(result);
)
)
架构文件
const mongoose = require('mongoose');
let keySchema = new mongoose.Schema(
key_id: String,
end_date: String,
activated: Boolean,
email: String
);
module.exports = mongoose.model("Keys", keySchema);
错误在库中,不确定路径指的是什么。
【问题讨论】:
【参考方案1】:确保检查模型挂钩,例如“pre”、“save”等,我遇到了同样的问题,
我在错误的地方使用了 this
关键字作为所有属性的快捷方式 [懒惰]
错误
objectSchema.pre('save', async function()
if(this.isModified(this)) do something()
);
解决方案
objectSchema.pre('save', async function()
if(this.isModified('property')) do something()
);
我希望这个示例可以帮助您找到自己的问题解决方案。
【讨论】:
以上是关于获取 TypeError:path.split 不是 Mongoose 中的函数的主要内容,如果未能解决你的问题,请参考以下文章
如何解决 TypeError: path.split is not a function
获取未捕获的类型错误:path.split 不是反应中的函数
if(str(saved_path).split('.')[1].lower() != 'gif'): IndexError: list index out of ra
os.path.split()os.path.realpath()和os.path.join()
python中的os.path.join, os.path.splitext, os.path.split, split()函数用法