此当前代码正在运行:
app.models.AvionPiloteAutorisation.find({
"where": {
"idAvion": avion.idAvion,
"or": [{
"dateExpiration": {
gt: Date.now()
}
}, {
"dateExpiration": null
}],
"dateSuppression": null
},
"include": {
"relation": "pilote",
"scope": {
"include": {
'piloteDisponibilite': {
scope: {
where: {
"DateDebut": {
lt: Date.now()
},
"or": [{
"DateFin": {
gt: Date.now()
}
}, {
"DateFin": null
}]
}
}
}
}
}
}
}
但是这个:
function getAuthorizePilotes(avion, distance, idSociete, callbackA) {
var tempsVolEstime = distance / avion.vitesseCroisiere;
app.models.AvionPiloteAutorisation.find({
"where": {
"idAvion": avion.idAvion,
"or": [{
"dateExpiration": {
gt: Date.now()
}
}, {
"dateExpiration": null
}],
"dateSuppression": null
},
"include": {
"relation": "pilote",
"scope": {
"include": {
'utilisateur',
'piloteDisponibilite': {
scope: {
where: {
"DateDebut": {
lt: Date.now()
},
"or": [{
"DateFin": {
gt: Date.now()
}
}, {
"DateFin": null
}]
}
}
}
}
}
}
失败。我试图为Pilote添加一个关系。我究竟做错了什么 ? 我怎么想添加这个当前代码的关系?
我尝试了"包含":[{...}]但没有成功。
app.models.AvionPiloteAutorisation.find({
"where": {
"idAvion": avion.idAvion,
"or": [{
"dateExpiration": {
gt: Date.now()
}
}, {
"dateExpiration": null
}],
"dateSuppression": null
},
"include": {
"relation": "pilote",
"scope": {
"include": ["utilisateur"],
"include": {
relation: 'piloteDisponibilite',
scope: {
where: {
"DateDebut": {
lt: Date.now()
},
"or": [{
"DateFin": {
gt: Date.now()
}
}, {
"DateFin": null
}]
}
}
}
}
}
不知道它是如何运作的。这不是官方文件中的线索。
感谢您的帮助。
答案 0 :(得分:0)
好的,我明白了:
app.models.AvionPiloteAutorisation.find({
"where": {
"idAvion": avion.idAvion,
"or": [{
"dateExpiration": {
gt: Date.now()
}
}, {
"dateExpiration": null
}],
"dateSuppression": null
},
"include": {
"relation": "pilote",
"scope": {
"include": ["utilisateur", 'piloteDisponibilite'],
relation: 'piloteDisponibilite',
scope: {
where: {
"DateDebut": {
lt: Date.now()
},
"or": [{
"DateFin": {
gt: Date.now()
}
}, {
"DateFin": null
}]
}
}
}
}
我们假设在include数组之外指定关系关键字的关系。