Диего
а как билдер в phpmyadmin запихать ))))
ThunderAL
->toSql()
Kate
Таким образом
select product_id, seller_id, count(*) as total from transactions group by product_id
ThunderAL
или через провайдер и dump()
Диего
опанах )
Александр
Привет всем!
Нужна помощь сообщества. Может я туплю конкретно и ответ на поверхности, поэтому решил уточнить у сообщества.
Есть таблица пользователей, каждому присвоен id. Среди этих пользователей есть админы, которые этих пользователей и добавляют. Для этого у всех пользователей есть поле admin_id, которое и хранит значение id всех этих админов. При чем админы как пользователи хранятся в этой таблице.
Вывожу таблицу всех пользователей одним запросом к модели. Получаю все данные. Но вместо id конкретного админа из поля admin_id мне необходимо ввывести его имя. Сейчас это выводится вот так
Александр
foreach ( $users as $useritem ) {
$admin_name = User::where('id', $useritem->admin_id)->value('name');
$item = [
'name' => $useritem->name,
'id' => $useritem->id,
'created_at' => $useritem->created_at,
'deleted_at' => $useritem->deleted_at,
'roles' => $useritem->roles,
'admin_name' => $admin_name,
];
array_push( $usersinfo, $item );
}
Александр
Но при таком способе на каждого юзера формируется отдельный запрос к базе данных. В связи с чем вопрос, как убрать этот запрос к базе данных по каждому пользователю?
И сильно ли большое количество запросов повлияет на быстродействие, т.к запросы тянут минимум информации из бд, по сути одно имя...
Диего
belongsTo чета-там
Александр
belongsTo чета-там
так это, если я правильно понимаю, чтобы связать разные таблицы, а у меня все в рамках одной таблицы users
Диего
я до orm тут еще не дошел, не знаю )
Диего
а что мешает таблице ссылаться на саму себя?
Vadim
Привет всем. Подскажите почему иногда выбивает MethodNotAllowedHttpException при переходе на /logout? С некоторых страниц работает, а с некоторых беда
Диего
орм выполняется одним запросом вообще с этими белонгс и хэз?
Диего
а вообще сделай вторую модель для админа и укажи там таблицу users
Диего
а че смайл забанен 😂😂😂😂😂
Antonio
Для начала вопрос, зачем второй id? Или это типа то добавил?
Диего
типада
Antonio
public function admin()
{
return $this->belongsTo(User::class, 'admin_id', 'id');
}
Диего
Диего
я орм вообще не втыкаю если честно
Диего
работал года два назад с ним
Antonio
Если потом получать User::with('admin')->get() то кажется одним
Диего
в последний раз
Antonio
я не заморачиваюсь пока где склько запросов
Диего
Диего
если проект не нагруженный то не надо
Antonio
https://laravel.com/docs/5.5/eloquent-relationships#eager-loading
Antonio
вот начиная отсюда почитай
Диего
короче два
Диего
это лучше чем +1 на каждого юзера
Диего
Александр
Александр
короче два
да, реально сокращается всего до двух запросов
Kate
Toss
Есть что в замену phpmyadmin?
Диего
pgadmin и постгрескуэль)
Anonymous
)))
Anonymous
Anonymous
если голова не варит
SiZE
Archakov
Подскажите, почему долго грузится запрос, при вызове
Archakov
public function getRelatedPostsAttribute() {
$posts = Category::find($this->category_id)->posts()->get();
return $posts;
}
Archakov
когда деаю просто dd($posts); все ок
Archakov
это свзяанно с тем, что мутатор на каждую запись посылает запрос? Я получаю одну запись и указываю, чтобы выдал мне свойство с записями из той же категории
Диего
почему вообще не with('relatedPosts')
Диего
туплю, ты получаешь одну запись
Rustam
Пропиши чтобы отображался сырой запрос
Rustam
И посмотрим че он там делает
Youri
при исследовании любого вопроса лучше вообще начать с wikipedia, https://ru.wikipedia.org/wiki/PhpMyAdmin
ThunderAL
+ я мог ошибиться с ключами в hasMany/One
ThunderAL
(или там вообще надо было belongsTo. я хз. я те дам идею)
ThunderAL
+ если надо сразу грузить всё — юзай поле $appends
ThunderAL
ПАСАНЫ!! ХАЛП!!!
есть домен на cloudflare. надо к нему подцепить мыло. есть yandex pdd. как это быстро соединить. оч нада!!!
ThunderAL
с клауда домен делигировать не самый хороший вариант
Antonio
Antonio
ThunderAL
@JesterAntik у тебя есть оные на примете?
Antonio
ThunderAL
и у меня нет. поэтому сюда и написал перед тем как создавать тред на тостере
Samat
а можно ли сделать так, чтобы, например, по запросу User::with('table3') в User поступала коллекция отфильтрованная? какой метод в модели/контроллере User отвечает за выдачу всех данных этой таблицы в базе?
Antonio
Antonio
Antonio
Или я не понял что ты хочешь и тебе надо фильтровать пользователей по какому-то признаку?
Samat
мне надо внутри метода, который выдает список юзеров по запросу User отфильтровать как-то, чтобы выходили только те, кто соответствуют определенному признаку
Samat
а потом присоединить к этому списку таблицу
Samat
методом with
Antonio
методом with
Этот метод присоединяет relation(связь)
Antonio
Antonio
Сейчас с телефона ссылку на документацию не дам, сори
Samat
ну, да, суть в том, что нужен именно with. я бы в нужном месте отфильтровал список, но с массивом $users такого не сделаешь ведь
Antonio
Раздел eloquent
Antonio
Samat
нет