Size: a a a

2020 July 20

А

Андрей in Laravel Pro
Владимир Путин
Ребята помогите плс. У меня есть таблицы Категории и Пользователи связанные many-to-many. У пользователя есть много категорий(подписан на категории).а Категории имеют много заказов с таблицей заказов связь one-to-many.мне нужно получить заказы на категорий на который подписан авторизованный пользователь. Через Has Many Through не получается
а по связям разве не проще?
источник

А

Андрей in Laravel Pro
User::with('categories')->with('categories.products')->get();

Самый простой путь, только если у тебя там овердохрена всего - ты держись)
источник

А

Андрей in Laravel Pro
хотя тут тебе с категории плясать нужно? опиши детальнее откуда старт
источник

А

Андрей in Laravel Pro
ну и всякие там условия расставь с вереХэз
источник

ЕП

Евгений Перин ⭐️... in Laravel Pro
Андрей
User::with('categories')->with('categories.products')->get();

Самый простой путь, только если у тебя там овердохрена всего - ты держись)
User::with('categories.products')->get();

достаточно писать просто так
источник

AB

Andrey Bogdanov in Laravel Pro
Евгений Перин ⭐️
User::with('categories.products')->get();

достаточно писать просто так
так ты получишь юзера со связями, но никак не коллекцию моделей из заказов
источник

ВП

Владимир Путин... in Laravel Pro
Андрей
хотя тут тебе с категории плясать нужно? опиши детальнее откуда старт
Таблица Категории и Таблица Пользователи связаны через many-to-many. А таблица Пользователя и Таблица заказа связаны через one-to-many. То есть некий пользователь создает заказ(то есть Таблица Заказа уже имеет создателя то есть user_id), который будут другие пользователи исполнять. У  других пользователей на странице выходит список заказов из категорий на которые они подписаны. Надо получить пользователь->категории на которые он подписан->заказы из этой категории
источник

А

Андрей in Laravel Pro
ну вот выше решение, теперь осталось только селекты расставить и всякие там метки для активных / черновиков / удаленных (смотря что там у тебя в логике)
источник

ЕП

Евгений Перин ⭐️... in Laravel Pro
Andrey Bogdanov
так ты получишь юзера со связями, но никак не коллекцию моделей из заказов
Да, но я то ответил не на вопрос который был выше, а просто отметил ответчику что достаточно одного with
источник

4

4unkur in Laravel Pro
$user->load(‘categories.products’);
$user->categories->reduce(function($category) {
return $category->products;
})->flatMap();
источник

ВП

Владимир Путин... in Laravel Pro
Андрей
ну вот выше решение, теперь осталось только селекты расставить и всякие там метки для активных / черновиков / удаленных (смотря что там у тебя в логике)
ну как бы работает, но это наверняка хуже вашего предолженного варианта foreach(Auth::user()->categories as $category){
           foreach($category->order as $order){
               var_dump($order);
           }
       }
источник

А

Андрей in Laravel Pro
Владимир Путин
ну как бы работает, но это наверняка хуже вашего предолженного варианта foreach(Auth::user()->categories as $category){
           foreach($category->order as $order){
               var_dump($order);
           }
       }
Можно и так) но забудешь лоад и словишь н+1
источник

BI

Bogdan Ivanov in Laravel Pro
Андрей
Можно и так) но забудешь лоад и словишь н+1
Н+1 жиз
источник

ВП

Владимир Путин... in Laravel Pro
Bogdan Ivanov
Н+1 жиз
что это?
источник

А

Андрей in Laravel Pro
А ты потом поймёшь) тебе бд напишет)
источник

ЕП

Евгений Перин ⭐️... in Laravel Pro
это плохо
источник

AB

Andrey Bogdanov in Laravel Pro
Владимир Путин
ну как бы работает, но это наверняка хуже вашего предолженного варианта foreach(Auth::user()->categories as $category){
           foreach($category->order as $order){
               var_dump($order);
           }
       }
почему сразу не дернуть из базы что надо? зачем эти костыли)
источник

SS

Stepan Stepanov in Laravel Pro
Ребята, добрый день
Подскажите как обычно делают по нормальному?
У меня фронт отдельно собирается
бэк отдельно собирается

в фронт на каждую ветку ходится так:
http://stage.test.com/branch/%branchname%/

хочу также развернуть для бэка, чтобы в итоге было примерно так:
http://stage.test.com/be_branch/%backend_branch_name%/fe_branch/%front_branch_name%/

при том что хочу бэк каждую сборку в отдельном контейнере…
источник

ВП

Владимир Путин... in Laravel Pro
Andrey Bogdanov
почему сразу не дернуть из базы что надо? зачем эти костыли)
$orders = Order::where('category_id', тут надо массив из категорий )->get(); ну для мен это не так легко сделать
источник

AB

Andrey Bogdanov in Laravel Pro
Stepan Stepanov
Ребята, добрый день
Подскажите как обычно делают по нормальному?
У меня фронт отдельно собирается
бэк отдельно собирается

в фронт на каждую ветку ходится так:
http://stage.test.com/branch/%branchname%/

хочу также развернуть для бэка, чтобы в итоге было примерно так:
http://stage.test.com/be_branch/%backend_branch_name%/fe_branch/%front_branch_name%/

при том что хочу бэк каждую сборку в отдельном контейнере…
ну обычно фронт и бэк собираются каждый раз, на каждый билд
источник