Size: a a a

2020 May 26

n

nighthtr [backend] in Laravel Pro
Egor Gruzdev
да не спасает его это, у него где кто в окружении дыра, т.к. даже агрегация через ->count падает
count у него 500 возвращал
источник

n

nighthtr [backend] in Laravel Pro
хм. или 500 ошибка. вот как его понять? :DDD
источник

EG

Egor Gruzdev in Laravel Pro
nighthtr [backend]
count у него 500 возвращал
500 ошибка
источник

n

nighthtr [backend] in Laravel Pro
не вижу ничего про ошибку
источник

T

Timur in Laravel Pro
Олег
если проект не большой/маленький, допустим если я начал копать ларавель и изучать его, что бы привить привычку какого то правильного кода, я со старта должен использовать репозиторий или как мне удобно ?
как удобно. Придумай папочку типа Helpers или Services, можешь внутри создать структуру папок, например папка Query (тупо говоря) в которой классы с выборками той или иной сущности, будь то Payments, Reports и прочее. Для себя обозначь цели для папок с теми или иными классами.
источник

T

Timur in Laravel Pro
и следуй этой структуре
источник

О

Олег in Laravel Pro
Timur
как удобно. Придумай папочку типа Helpers или Services, можешь внутри создать структуру папок, например папка Query (тупо говоря) в которой классы с выборками той или иной сущности, будь то Payments, Reports и прочее. Для себя обозначь цели для папок с теми или иными классами.
Просто нужно меру своего же удобства тоже знать, возможно я буду потом в другом проекте и там папочки будут другие и свою мысль донести не смогу, нужно будет переучиваться, а тут паттерн, он как бы принят вроде и есть его четкий шаблон
источник

n

nighthtr [backend] in Laravel Pro
короче он писал что < 100 норм работало. соответственно просто меньше моделей возвращалось. вот и гадай чего у него там происходит
источник

T

Timur in Laravel Pro
Олег
Просто нужно меру своего же удобства тоже знать, возможно я буду потом в другом проекте и там папочки будут другие и свою мысль донести не смогу, нужно будет переучиваться, а тут паттерн, он как бы принят вроде и есть его четкий шаблон
Паттерн репозитория не на 100% логично садится рядом с Eloquent / Active record
источник

T

Timur in Laravel Pro
хоть и есть такая практика
источник

О

Олег in Laravel Pro
я про это еще не читал))) сейчас чекну
источник

n

nighthtr [backend] in Laravel Pro
Timur
Паттерн репозитория не на 100% логично садится рядом с Eloquent / Active record
внутри репозитория получаешь через Eloquent/ActiveRecord. репозиторию вообще пофиг откуда данные брать
источник

n

nighthtr [backend] in Laravel Pro
может через dpo доставать
источник

T

Timur in Laravel Pro
Просто зачастую Репозиторий реализует какой-то общий интерфейс, а значит методы будут для всех сущностей одинаковы, а тебе например хочется получить какой-то особый отчет с особой выборкой и тд
источник

А

Антон in Laravel Pro
nighthtr [backend]
внутри репозитория получаешь через Eloquent/ActiveRecord. репозиторию вообще пофиг откуда данные брать
А почему тогда не внутри сервиса? Почему сразу не из модели? Обернул елоквент классом - и он уже репозиторий?
источник

О

Олег in Laravel Pro
Timur
Просто зачастую Репозиторий реализует какой-то общий интерфейс, а значит методы будут для всех сущностей одинаковы, а тебе например хочется получить какой-то особый отчет с особой выборкой и тд
а разве в интерфейсе я не могу сделать какой то особый метод выборки и реализовать его потом в классе ?
источник

n

nighthtr [backend] in Laravel Pro
Антон
А почему тогда не внутри сервиса? Почему сразу не из модели? Обернул елоквент классом - и он уже репозиторий?
потому что сервис работает с данными через репозиторий. ты можешь заменить репозиторий и он так же будет работать.
источник

А

Антон in Laravel Pro
Timur
Просто зачастую Репозиторий реализует какой-то общий интерфейс, а значит методы будут для всех сущностей одинаковы, а тебе например хочется получить какой-то особый отчет с особой выборкой и тд
А репозиторий без интерфейса уже не репозиторий?
источник

T

Timur in Laravel Pro
Антон
А репозиторий без интерфейса уже не репозиторий?
репозиторий, но уже зависимый от реализации
источник

А

Антон in Laravel Pro
nighthtr [backend]
потому что сервис работает с данными через репозиторий. ты можешь заменить репозиторий и он так же будет работать.
А почему это не сервис в сервисе, а именно репозиторий в сервисе?
источник