У меня есть 2 таблицы. Один с некоторыми значениями, а другой с группами. Я хочу соединить значения слева, чтобы сохранить запросы и вернуть group-one
в следующем формате:
[
'primary' => 'linear-gradient(90deg, rgba(18,23,64,1) 0%, rgba(0,145,209,1) 100%)',
'secondary' => 'linear-gradient(90deg, rgba(245,128,31,1) 0%, rgba(252,235,20,1) 100%)',
'logo-primary' => '#121740',
'logo-secondary' => '#F5801F',
'badge' => 'linear-gradient(180deg, rgba(252,235,20,1) 0%, rgba(245,128,31,1) 100%)'
]
Это строка, которую я получаю из таблицы групп:
BrandingGroups
[
'primary' => 1,
'secondary' => 2,
'logo-primary' => 3,
'logo-secondary' => 4,
'badge' => 5
]
И это таблица значений:
BrandingValues
[
[
'id' => 1,
'name' => 'primary-gradient-primary',
'value' => 'linear-gradient(90deg, rgba(18,23,64,1) 0%, rgba(0,145,209,1) 100%)',
],
[
'id' => 2,
'name' => 'primary-gradient-secondary',
'value' => 'linear-gradient(90deg, rgba(245,128,31,1) 0%, rgba(252,235,20,1) 100%)',
],
[
'id' => 3,
'name' => 'primary-flat-primary',
'value' => '#121740',
],
[
'id' => 4,
'name' => 'primary-flat-secondary',
'value' => '#F5801F',
],
[
'id' => 5,
'name' => 'primary-vertical-gradient',
'value' => 'linear-gradient(180deg, rgba(252,235,20,1) 0%, rgba(245,128,31,1) 100%)',
]
]
Какой лучший способ вернуть Мой желаемый результат - просто соединения, так что это все один запрос, так как очевидно, что отношения выполняют несколько запросов, основываясь на том, запрашивается ли значение, однако все эти значения гарантированно будут запрошены.