Порядок следования по столбцу не упорядочивает строки - PullRequest
0 голосов
/ 07 августа 2020

Я хочу упорядочить по времени updatedAt, чтобы я мог показывать вверху сообщения, которые недавно обновлялись. Вот мой запрос -

const post = await Post.findAndCountAll({
    attributes: {
      exclude: ["description"],
    },
    where: { isVisible: true },
    limit: 10,
    offset: 1,
    order: [["updatedAt", "DESC"]],
  });

Это не порядок сообщений. Что мне не хватает?

Документация, на которую я ссылался - https://sequelize.org/master/class/lib/model.js~Model.html

Изменить: Post Model-

const { Sequelize } = require("sequelize");

module.exports = (sequelize, DataTypes) => {
  return sequelize.define("Post", {
    id: {
      type: DataTypes.UUID,
      primaryKey: true,
      allowNull: false,
      defaultValue: Sequelize.UUIDV4,
    },
    title: {
      type: DataTypes.STRING,
      allowNull: false,
    },
    briefDescription: {
      type: DataTypes.STRING(300),
      allowNull: false,
      validate: { len: [1, 300] },
    },
    description: {
      type: DataTypes.TEXT,
    },
    url: {
      type: DataTypes.TEXT,
      allowNull: false,
    },
    thumbnail: {
      type: DataTypes.STRING,
      allowNull: false,
    },
    sourceText: {
      type: DataTypes.STRING,
      allowNull: false,
    },
    sourceUrl: {
      type: DataTypes.TEXT,
      allowNull: false,
    },
    priority: {
      type: DataTypes.INTEGER,
      allowNull: false,
      defaultValue: 1,
      validate: {
        min: 1,
        max: 10,
      },
    },
    isFeatured: {
      type: DataTypes.BOOLEAN,
      allowNull: false,
      defaultValue: false,
    },
    likeCount: {
      type: DataTypes.INTEGER,
      defaultValue: 0,
    },
    commentCount: {
      type: DataTypes.INTEGER,
      defaultValue: 0,
    },
    moodCount: {
      type: DataTypes.INTEGER,
      defaultValue: 0,
    },
    moodJSON: {
      type: DataTypes.TEXT,
      allowNull: false,
      defaultValue: JSON.stringify(
        ["HAPPY", "MOTIVATED", "NORMAL", "SAD", "MEH"].map((rxn) => {
          return { mood: rxn, count: 0 };
        })
      ),
    },
    bookmarkCount: {
      type: DataTypes.INTEGER,
      defaultValue: 0,
    },
    viewCount: {
      type: DataTypes.INTEGER,
      defaultValue: 0,
    },
    shareCount: {
      type: DataTypes.INTEGER,
      defaultValue: 0,
    },
    isSpam: {
      type: DataTypes.BOOLEAN,
      allowNull: false,
      defaultValue: false,
    },
    isVisible: {
      type: DataTypes.BOOLEAN,
      allowNull: false,
      defaultValue: false,
    },
  });
};
...