Skip to content

Commit

Permalink
fix: get embeds field
Browse files Browse the repository at this point in the history
  • Loading branch information
phamanhtuan90 committed Apr 9, 2020
1 parent 02f3cf2 commit 559ff24
Showing 1 changed file with 12 additions and 10 deletions.
22 changes: 12 additions & 10 deletions src/Controllers/BaseController.php
Original file line number Diff line number Diff line change
Expand Up @@ -282,17 +282,19 @@ public function decorEmbed($model, $params)
foreach ($params['embeds'] as $embed) {
$method = $embed . 'EmbedConfig';
$embedInfo = method_exists($model, $method) ? call_user_func([$model, $method]) : [];
$embedTable = isset($embedInfo['table']) ? $embedInfo['table'] : $embed;
$embedColumns = isset($embedInfo['columns']) ? $embedInfo['columns'] : [];
if ($embedInfo) {
if ($embedsFields && isset($embedsFields[$embed])) {
$embedColumns = $embedsFields[$embed];
}
foreach ($embedColumns as &$column) {
$column = $embedTable . '.' . $column;
$embedTable = isset($embedInfo['table']) ? $embedInfo['table'] : '';
$embedColumns = isset($embedInfo['columns']) ? $embedInfo['columns'] : null;
if ($embedsFields && isset($embedsFields[$embed])) {
$embedColumns = $embedsFields[$embed];
}
if ($embedColumns) {
if ($embedTable) {
foreach ($embedColumns as &$column) {
$column = $embedTable . '.' . $column;
}
}
$embeds[$embed] = function ($query) use ($embedColumns) {
$query->get($embedColumns);
$embeds[$embed] = function ($query) use ($embedColumns) {
$query->select($embedColumns);
};
} else {
$embeds[] = $embed;
Expand Down

0 comments on commit 559ff24

Please sign in to comment.