@laravel_pro

Страница 1975 из 2014
Yura
17.10.2018
20:32:34
уже придумал какую-то дичь, надеюсь не посадят

Sergo
17.10.2018
20:40:33
Yura
17.10.2018
20:41:05
да просто спросил) как это делаете?

Anton
17.10.2018
23:43:47
Парни, а как можно гибко управлять отношениями модели через рест апи(динамически подключать зависимости). Допустим, есть у меня модель юзера и у нее около 10 разных отношений, некоторые из них могут быть очень тяжелые. А на фронте мне нужно забирать юзера в разных местах и из разными отношениями. Например, на странице настроек мне нужно почти все отношения кроме постов и коментов, а на странице "Мои статьи" мне нужно только посты. И таких разных кейсов может быть очень много, где нужно такие-то отношения а каких-то не нужно. Решение в лоб - создавать отдельные роуты, типа getUsersWithPostsSettingsComments, getUsersWithSettings и т.д. Но такое решение очень "не очень". Вторая мысль - graphql, но мы не в мире ноды. Как можно зарезолвить такой кейс, может кто-то делал уже что-то подобное?

Google
Anton
17.10.2018
23:49:08
Даже, это не относится на прямую к ларе, а по другим языкам тоже, впринципе вопрос по рест апи, может есть какие-нибудь best practice?

По канону, я должен сделать такие роуты users/{id}/posts, но они возвращают сами посты, то есть как только я получил юзеров, я их перебираю в цикле, и для каждого делаю запрос для постов, но если юзеров ~ 50, плюс мне еще нужно не только посты а и комменты и еще что-то, то общее количество запросов будет очень большим, что тоже не айс

Anton
18.10.2018
00:41:54
User::where('id', $id)->with(['posts', 'posts.comments, posts.someoneelse])->get();
оки, но если у меня с десяток отношений, то мне 10*10 таких же селектов прописывать для каждого случая?

Anton
18.10.2018
00:46:56
на пыхе?

Adel
18.10.2018
00:48:53
на пыхе?
сомнеаешься в языке? :)

нутогда просто проси какие зависимости тебе надо

и формируй нужный запрос

почти как ручной graphql

Anton
18.10.2018
00:49:57


Adel
18.10.2018
00:50:19
ну примерно так,да :)

Anton
18.10.2018
00:50:27
пока у себя так сделал, но тоже костыль. Должно быть что-то, частый кейс же

Google
Adel
18.10.2018
00:50:40
не такой прям частый...

10 релейшенов это уже много...

модель слишком ддохера большая..

Anton
18.10.2018
00:51:12
ну магаз какой нибудь

Adel
18.10.2018
00:51:20
необходимы боундед контексты и прочая ддд фигня

Anton
18.10.2018
00:51:21
та даже пять отношений, и уже заипешся описывать каждый случай

а что за контексты?

что то с тестами связано?

Adel
18.10.2018
00:54:00
не...

забей

Anton
18.10.2018
00:57:06
Adel
18.10.2018
00:58:19
оно. но я жуе сказал - забей :)

оно редко какому проекту нужно

Антон
18.10.2018
05:56:01
If the implementation is hard to explain, it's a bad idea (Если реализацию сложно объяснить - идея плохая)

Александр
18.10.2018
06:04:07
Жадная загрузка 10 отношений для списка с пагинацией - это не особо сложно, и сложность - константа

Шли параметр и в зависимости от параметра возвращай разные ресурсы (апи ресурсы)

https://laravel.com/docs/5.7/eloquent-resources

ExPandable
18.10.2018
08:01:15
подскажите, у юзера есть профиль, в профиле некая инфа. лучше создавать отдельную связь к users или хранить информацию в таблице users?

Александр
18.10.2018
08:16:18
Та проще в таблице юзерс

Ну конечно если информация есть для всех юзеров

Google
Александр
18.10.2018
08:16:49
Если у тебя там на сайте три роли

И инфа должна быть только для одной из ролей

То тогда лучше в отдельной

ExPandable
18.10.2018
08:19:18
ролей пока не планировали

но да, юзеру сразу же личный кабинет создается

Azer
18.10.2018
08:26:26
я установил v8js но на сайте пишет Class 'V8Js' not found .

кто знает как исправить это

ExPandable
18.10.2018
08:26:50
composer dump-autoload

Azer
18.10.2018
08:28:13
composer dump-autoload
Я установил только экстеншн

ExPandable
18.10.2018
08:28:52
mr
18.10.2018
08:30:02
всем привет!

кто какую админку посоветует?

ExPandable
18.10.2018
08:30:21
админлте

mr
18.10.2018
08:30:47
это пакет для ларавел или посто хтмл шаблон ?)

ExPandable
18.10.2018
08:31:06
просто хтмл шаблон который пакетом ставится

Azer
18.10.2018
08:31:40
composer dump-autoload
А что то ещё разве надо?

F01134H
18.10.2018
08:31:42
сложно сказать однозначно
Тогда и ответить сложно

Azer
18.10.2018
08:31:47
Кроме экстеншна

Google
mr
18.10.2018
08:36:44
просто хтмл шаблон который пакетом ставится
то есть voyager это готовая адиинка, а lte это просто хтмл шаблон?)

ExPandable
18.10.2018
08:37:07
mr
18.10.2018
08:44:39
ExPandable
18.10.2018
08:44:44
да

mr
18.10.2018
08:48:35
да
да я вот хотел глянуть что то на подобии voyager, это понятно, что можно любую хтмл админку прикучивать

ExPandable
18.10.2018
08:48:48
nova?

mr
18.10.2018
08:49:17
а lte уже и так буду прикручивать на другом проекте

nova?
все таки посижу и все по устанавливаю и гляну..

Ivan
18.10.2018
08:55:12
Nova платная?

Dmitriy
18.10.2018
08:55:32
да

Ivan
18.10.2018
08:56:00
да
Спасибо

Dmitrij
18.10.2018
09:03:46
Привет всем. Мужики, как проссумировать 2 массива, чтоб значения проссумировались по ключу? ) http://sandbox.onlinephpfunctions.com/code/e3228c125b169f8472661012e5c35a26981c7bc9

Dmitrij
18.10.2018
09:07:08
array_column, array_sum
не подходит, всё равно перебирать придется

Alex
18.10.2018
09:07:22
Ребят, привет. Подскажите пожалуйста. Проблема такая: на странице категории вывожу продукты таким образом $products = $model->products()->where('published' , '=', 1)->paginate(6); И у меня дублируются некоторые продукты на первой и второй странице. Однако если я поставлю paginate(любое другое число например 7) то уже все ок. Кто нибудь в курсе, может это какой-то кеш этого метода? Хотя кеш чистил

BN
18.10.2018
09:12:40
не подходит, всё равно перебирать придется
а почему у массивов индексы нарушены? так должно быть?

Dmitrij
18.10.2018
09:13:22
это не индексы, это ключи

BN
18.10.2018
09:14:01
т.е. это ассоциативный массив?

Dmitrij
18.10.2018
09:15:00
да

BN
18.10.2018
09:15:24
тогда перебирайте)))

Google
Dmitrij
18.10.2018
09:15:40
)))

перебираю, но как то по костыльному смотрится ))))

F01134H
18.10.2018
09:16:22
не подходит, всё равно перебирать придется
и array_column и array_sum под капотом перебирают массив

как и все функции работающие с массивами)

Страница 1975 из 2014