Size: a a a

2020 April 09

M

Michael in Laravel Pro
Kushina Uzumaki
Добрый день всем)
Ребят, помогите пожалуйста, не могу разобраться со связями...
Есть книги (Book модель), арендаторы (Renter) и аренда (Rent).
У книг и арендаторов сделала отношение hasMany, получающая аренды.
Одна казалось бы простая задача, с которой все никак не могу справиться:
1. Вывести самых активных арендаторов (те, у которых больше всего арендовано книг), а также получить количество активных аренд (те, у которых expired_at у модели Rent больше, чем текущая дата)

Настолько устала уже пытаться, что готова даже заплатить за объяснение 🤦‍♀️
Получается, что Rent - это пивот для других моделей с многие-ко-многим ? https://laravel.su/docs/5.4/eloquent-relationships#many-to-many
источник

VM

Valar Morghulis in Laravel Pro
Alex Grishkevich
Привет. Кто-нибудь сталкивался с задачей совмещения нечеткого поиска с FULLTEXT ? Необязательно по ларе
Да здравствует Elasticsearch. ))
источник

KU

Kushina Uzumaki in Laravel Pro
Угу
источник

ED

Evgeny Dobriansky in Laravel Pro
invariance
Есть сервис, состоящий из одного или множества классов. Каждый сервис отвечает за какой-то свой функционал, типо управление пользователем, постами в блоге или еще что-то.

Сервис-контейнер это просто структура, хранящая все зависимости между твоими сервисами (что сервис "юзер" использует сервис "загрузчик аватаров" и т.п.).

Сервис-контейнер управляется сервис-локатором, это штука еще на уровень выше, которая позволяет эти зависимости контролировать, к примеру, в сервис-провайдерах (или в файлах конфигурации, как в симфони). Т.е. позволяет тебе указывать, что сервису "юзер" нужно внедрять "загрузчик аватаров", а не "загрузчик документов", к примеру.
Честно, ничего не понял, хотя я знаю как работает di в ларавель
источник

AG

Alex Grishkevich in Laravel Pro
Valar Morghulis
Да здравствует Elasticsearch. ))
знаешь как называется подход - молодец. но это не исчерпывающий ответ
источник

i

invariance in Laravel Pro
Evgeny Dobriansky
Честно, ничего не понял, хотя я знаю как работает di в ларавель
это потому что DI тут косвенное значение имеет
источник

M

Michael in Laravel Pro
хотя нет
источник

ED

Evgeny Dobriansky in Laravel Pro
invariance
это потому что DI тут косвенное значение имеет
Он как бы лежит в основе контейнера, что там есть кроме di и service?
источник

KU

Kushina Uzumaki in Laravel Pro
Не совсем так.
У Book и Renter моделей есть отношение с Rent моделью hasMany, называемое соответственно rents.
А у Rent есть belongsTo с Book и Renter
источник

i

invariance in Laravel Pro
Evgeny Dobriansky
Он как бы лежит в основе контейнера, что там есть кроме di и service?
Как бы полиморфизм сервис контейнер тоже поддерживает
источник

D

Dymon in Laravel Pro
Kushina Uzumaki
Проблема в том, что это нужно сделать одним запросом — получить список арендаторов, их книги, плюс добавить к арендатору поля rents_total (всего) и rents_active (активные аренды)
источник

KU

Kushina Uzumaki in Laravel Pro
Господи, я просто слепая идиотка... 😅
Читала этот раздел, но не обратила внимания.
Получилось:
$renters = Renter::withCount([
   'rents as rents_total',
   'rents as rents_active' => function(Builder $query) {
       $query->whereDate('expired_at', '>', now());
   }
])->has('rents')->orderBy('rents_total', 'desc')->limit(10)->get();

Получила и количество всех аренд и количество активных.
Огромное спасибо! ❤️
источник

J

Java Script Бог язык... in Laravel Pro
Нужна срочно информация о Фасад - Сервис провайдер - Сервис контейнер - Но для Дибилов, а то никак не могу понять зачем это и как работает
источник

BI

Bogdan Ivanov in Laravel Pro
Java Script Бог языков
Нужна срочно информация о Фасад - Сервис провайдер - Сервис контейнер - Но для Дибилов, а то никак не могу понять зачем это и как работает
Срочно?
источник

J

Java Script Бог язык... in Laravel Pro
Bogdan Ivanov
Срочно?
Ну думаю года  3 подожду
источник

i

invariance in Laravel Pro
Java Script Бог языков
Ну думаю года  3 подожду
тогда норм
источник

i

invariance in Laravel Pro
через годик-полтора отвечу
источник

L

Loot.jpg in Laravel Pro
Java Script Бог языков
Нужна срочно информация о Фасад - Сервис провайдер - Сервис контейнер - Но для Дибилов, а то никак не могу понять зачем это и как работает
Посмотри любое видео про di container. А фасад после этого понять ещё легче
источник

AA

Ann Ali in Laravel Pro
Java Script Бог языков
Нужна срочно информация о Фасад - Сервис провайдер - Сервис контейнер - Но для Дибилов, а то никак не могу понять зачем это и как работает
Умозрительно не понять, нужно на практике попробовать пару раз - тогда поймешь. Фасады, кстати, неоднозначный паттерн, многие его не любят
источник

i

invariance in Laravel Pro
А самое главное, фасад в ларавеле - это не фасад
источник