q-koa 7.8.3 → 7.8.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/core/app.js +27 -12
- package/package.json +1 -1
package/core/app.js
CHANGED
|
@@ -729,17 +729,31 @@ class APP {
|
|
|
729
729
|
}
|
|
730
730
|
|
|
731
731
|
if (model1 && this.app[appName].model[model1]) {
|
|
732
|
-
|
|
733
|
-
this.app[appName].model[model1]
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
732
|
+
const is_multiple =
|
|
733
|
+
(this.app[appName].attributes[model][model1 + '_id'].defaultValue &&
|
|
734
|
+
Array.isArray(
|
|
735
|
+
this.app[appName].attributes[model][model1 + '_id'].defaultValue
|
|
736
|
+
)) ||
|
|
737
|
+
(this.app[appName].attributes[model][model1 + '_id'].type &&
|
|
738
|
+
this.app[appName].attributes[model][model1 + '_id'].type ===
|
|
739
|
+
'JSON') ||
|
|
740
|
+
(this.app[appName].attributes[model][model1 + '_id'].type &&
|
|
741
|
+
this.app[appName].attributes[model][model1 + '_id'].type.key &&
|
|
742
|
+
this.app[appName].attributes[model][model1 + '_id'].type.key ===
|
|
743
|
+
'JSON')
|
|
744
|
+
if (!is_multiple) {
|
|
745
|
+
this.app[appName].model[model].hasOne(
|
|
746
|
+
this.app[appName].model[model1],
|
|
747
|
+
{
|
|
748
|
+
foreignKey: 'id',
|
|
749
|
+
sourceKey: `${model1}_id`,
|
|
750
|
+
constraints: false,
|
|
751
|
+
}
|
|
752
|
+
)
|
|
753
|
+
this.app[appName].include[model].push({
|
|
754
|
+
model: this.app[appName].model[model1],
|
|
755
|
+
})
|
|
756
|
+
}
|
|
743
757
|
if (
|
|
744
758
|
this.app[appName].attributes[model][`${model1}_id`].hasOne &&
|
|
745
759
|
this.app[appName].attributes[model][`${model1}_id`].hasOne === true
|
|
@@ -1500,7 +1514,7 @@ class APP {
|
|
|
1500
1514
|
if (rows.length === 0) ctx.SUCCESS([])
|
|
1501
1515
|
let objList = {}
|
|
1502
1516
|
for (let j = 0; j < specialInclude.length; j++) {
|
|
1503
|
-
const model = specialInclude[j]
|
|
1517
|
+
const { model, ...rest } = specialInclude[j]
|
|
1504
1518
|
const modelName = model.getName()
|
|
1505
1519
|
const modelIdList = _.uniq(
|
|
1506
1520
|
rows
|
|
@@ -1517,6 +1531,7 @@ class APP {
|
|
|
1517
1531
|
where: {
|
|
1518
1532
|
id: modelIdList,
|
|
1519
1533
|
},
|
|
1534
|
+
...rest,
|
|
1520
1535
|
})
|
|
1521
1536
|
objList = {
|
|
1522
1537
|
...objList,
|