Skip to content

Commit a68df15

Browse files
author
Marius
committed
fix withRelationsCount and withRelationsExistence on get
1 parent d7ceceb commit a68df15

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

src/Http/Controllers/ResourceControllerTrait.php

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -104,17 +104,19 @@ public function get(string $identifier, Request $request): JsonResponse
104104
$this->getFilteredRelations((array)$request->get('withRelations'))
105105
);
106106
$result = $baseModel->toArray();
107-
$countRelations = $this->getFilteredRelations((array)$request->get('withRelationsCount'));
107+
$countRelations = $this->getFilteredRelations((array)$request->get('withRelationsCount'), $baseModel);
108108

109109
foreach ($countRelations as $relationName) {
110-
$result[$relationName . ListFilterBuilder::COUNT_ALIAS_POSTFIX] ??=
110+
$result[$relationName . '_count'] ??=
111111
$baseModel->{$relationName}()->count();
112112
}
113113

114-
foreach ($this->getFilteredRelations((array)$request->get('withRelationsExistence')) as $relationName) {
114+
foreach (
115+
$this->getFilteredRelations((array)$request->get('withRelationsExistence'), $baseModel) as $relationName
116+
) {
115117
$result[$relationName . '_exist'] ??= \in_array($relationName, $countRelations, true) &&
116-
\is_int($result[$relationName . ListFilterBuilder::COUNT_ALIAS_POSTFIX] ?? null) ?
117-
$result[$relationName . ListFilterBuilder::COUNT_ALIAS_POSTFIX] > 0 :
118+
\is_int($result[$relationName . '_count'] ?? null) ?
119+
$result[$relationName . '_count'] > 0 :
118120
$baseModel->{$relationName}()->exists();
119121
}
120122

0 commit comments

Comments
 (0)