按日期排序包含多个日期的列表
Order by date a list with multiple dates
我正在构建一个显示事件列表的页面。每个事件都发生在一个或两个连续的日期。问题是这些事件应该在这些日期之前排序。
我用 Sequelize.js.
例如:
event1 - 7 月 13 日和 14 日应该显示在 event2- 7 月 10 日和 11 日之前,因为它是最近的。
我有两个表:具有一对多关系的 Events 和 EventDates。
Event.findAll({
include: [
{ model:EventDates, order: [ [ 'date', 'DESC' ]] },
],
})
这只会对一个事件的两个日期进行排序,不会比较不同事件的日期。
如何进行订单操作?
EventDates 模型:
var EventDates= sequelize.define('eventdates', {
date: {
type: Sequelize.DATE
},
availabletickets: {
type: Sequelize.INTEGER
},
},
{
freezeTableName: true
});
事件模型:
var Event = sequelize.define('event', {
title: {
type: Sequelize.STRING,
},
slug: {
type: Sequelize.STRING
},
description: {
type: Sequelize.STRING
},
isDeleted:{
type: Sequelize. BOOLEAN,
defaultValue: false
},
}
});
在您当前的代码中,您仅在 Eventdates 内进行排序,您也必须对整个列表进行排序:
Event.findAll({
include: [
{ model:EventDates, order: [ [ 'date', 'DESC' ]] },
],
order: [[ EventDates , 'date', 'DESC']]
})
我正在构建一个显示事件列表的页面。每个事件都发生在一个或两个连续的日期。问题是这些事件应该在这些日期之前排序。 我用 Sequelize.js.
例如: event1 - 7 月 13 日和 14 日应该显示在 event2- 7 月 10 日和 11 日之前,因为它是最近的。
我有两个表:具有一对多关系的 Events 和 EventDates。
Event.findAll({
include: [
{ model:EventDates, order: [ [ 'date', 'DESC' ]] },
],
})
这只会对一个事件的两个日期进行排序,不会比较不同事件的日期。
如何进行订单操作?
EventDates 模型:
var EventDates= sequelize.define('eventdates', {
date: {
type: Sequelize.DATE
},
availabletickets: {
type: Sequelize.INTEGER
},
},
{
freezeTableName: true
});
事件模型:
var Event = sequelize.define('event', {
title: {
type: Sequelize.STRING,
},
slug: {
type: Sequelize.STRING
},
description: {
type: Sequelize.STRING
},
isDeleted:{
type: Sequelize. BOOLEAN,
defaultValue: false
},
}
});
在您当前的代码中,您仅在 Eventdates 内进行排序,您也必须对整个列表进行排序:
Event.findAll({
include: [
{ model:EventDates, order: [ [ 'date', 'DESC' ]] },
],
order: [[ EventDates , 'date', 'DESC']]
})