无法读取 sails Js Mongo DB 中未定义的 属性 'columnName'

Cannot read property 'columnName' of undefined in sails Js Mongo DB

我正在使用带有 Mongo 数据库的 sails JS。 我的模型是:

module.exports = {
  attributes: {
    title:{type:"string",required:true},
    content:{type:"string",required:true},
    date:{type:"string",required:true},
    filename:{type:"string",required:true},
  },
};

我的控制器是:

fetchposts:function(req,res){
        console.log("in fetch posts")
        mysort={$id:-1}
  
       Cyberblog.find().sort(mysort).limit(5).exec(function(err, result) {
            if (err || !result) {
                 message="no records fetched";
                 console.log(message);
                 res.redirect('/newpost');
                 }
             else{
                console.log(result)
             }   

我遇到这样的错误

”警告:提供的条件中的 sort 子句被指定为字典(普通 JS 对象), 这意味着它可能正在使用 Mongo-Esque 语义(类似于 { fullName: -1, rank: 1 })。 但是从 Sails v1/Waterline 0.13 开始,这不再是推荐的用法。相反,请使用 像 'fullName DESC' 这样的字符串,或者像 [ { fullName: 'DESC' } ] 这样的数组。 (既然我明白你的意思,现在容忍并重新映射这种用法......)

我无法获取任何记录。它显示没有获取记录。

所以我有一个关于排序的警告,没有来自数据库的记录。请帮我解决问题。

排序子句允许发送字符串:

var users = await User.find({ name: 'Jake'})
.sort('age ASC');

return res.json(users);

或者一个数组:

var users = await User.find({ name: 'Finn'})
.sort([
  { age: 'ASC' },
  { createdAt: 'ASC' },
]);

return res.json(users);

在文档中查看:

https://sailsjs.com/documentation/reference/waterline-orm/queries/sort