1 / 1 / 0
Регистрация: 14.03.2016
Сообщений: 54
|
|
Как правильно подгрузить свои классы и функции в laravel ?23.03.2016, 22:01. Показов 12044. Ответов 7
Метки нет Все метки)
(
Например у нас есть controller в котором методы для страницы регистрации, авторизации личного кабинета. Есть класс модели User управляющий таблицей users на основе active record
Допустим я хочу подключить класс UserAccount для внутреннего счета который не будет laravel'ой моделью, то есть не будет наследоватся как extends Model а чисто мой интерфейс.. может вообще голые функции без класса захочу подключить, хотя и вряд ли. И хочу вызывать эти классы/функции в controller? Как это верно сделать? Аналогом require_once или как то еще? Хочется как проще...
0
|
23.03.2016, 22:01 | |
Ответы с готовыми решениями:
7
Как правильно биндить свои классы к TreeView Как правильно архивировать laravel 5.5 приложение? Как правильно сделать структуру в Laravel не нарушая MVC? |
![]() 1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
|
|
25.03.2016, 08:47 | |
Ну это самый просто вариант. Но скорее всего вам придется создавать объект этого класса в куче разных мест, а это создает сильно связанный код.
Более крутой вариант, через сервис провайдеры.
0
|
1 / 1 / 0
Регистрация: 14.03.2016
Сообщений: 54
|
|||||||||||
26.03.2016, 00:03 [ТС] | |||||||||||
В общем решил попробовать все таки использовать laravel модели для таблиц и orm, в сочетании с db raw где по другому не получается.
Но тут возник такой вопрос. Допустим в контроллере, мне нужно скажем принять платеж от юзера, оформить ему подписку. Да я использую для этого объекты моделей laravel например так:
Конечно я понимаю, что есть разные паттерны в ООП и сделать можно по всякому.. Но вопрос скорее как во фреймворках принято. Писать всю эту бизнес логику в классах моделируюших таблицы, или в отдельных??
0
|
![]() 5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
|
|
26.03.2016, 21:16 | |
Можно сделать repository. https://laravel.ru/posts/41
0
|
1 / 1 / 0
Регистрация: 14.03.2016
Сообщений: 54
|
|||||||||||
06.05.2016, 13:49 [ТС] | |||||||||||
На данный момент функционал связанный с данным кодом отлажен вместе с тестовым платежным шлюзом. Временно переключились на другой проект.
До Repository только сейчас начинаю читать разбираться.. Переписывать возможно и не буду, но думаю как бы было с ним.. Как я понимаю Repository обертывает запросы sql или orm для данной или связанной с ней таблиц, например в моем случае вместо:
Было бы, что то вроде:
Ну а в целом слой бизнес логики который определяет алгоритм типа: Смотрим баланс Вычитаем сумму Если нельзя отрицательный баланс выдаем ошибку Добавляем в транзакции и обновляем баланс Все равно должен быть не в репозитории, а в отдельном классе, который просто подключается к контроллеру, ну или просто в методе контроллера если не заморачиваться.
0
|
06.05.2016, 13:49 | ||||||
Помогаю со студенческими работами здесь
8
Как правильно перелинковать свои сайты? Как правильно обновлять свои OCX
VS2010 - Как правильно распространять свои приложения ? Как правильно размещать свои статьи с др. источников у себя на сайте? Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
Новые блоги и статьи
![]() |
||||
Линейное решение нелинейной задачи. Выведение формул LM (сам тоже могу, но хочу проверить LM)
Hrethgir 10.04.2025
В продолжение
Эта LM дала ответ похожий на нормальный.
Assistant
qwen2. 5-14b-instruct
.
Сначала изображение (переделаю в лучший вид когда проверю что мне написала языковая модель). . .
|
Переменные в Python
py-thonny 10.04.2025
Переменная в программировании — это символическое имя, связанное с областью памяти, в которой хранится значение. Она позволяет получать доступ к данным через понятные человеку идентификаторы, а не. . .
|
Многопоточность в C#: Task и асинхронные операции
UnmanagedCoder 10.04.2025
Многопоточность позволяет выполнять несколько операций одновременно, что важно для решения двух основных задач: повышения скорости выполнения вычислительно-сложных операций и сохранения отзывчивости. . .
|
Линейное решение не линейной задачи (емкость вычислений в сравнении с традиционными решениями пока не определена).
Hrethgir 10.04.2025
В рамках предстоящих вычислений пришлось (да, я тоже знаю про корень числа, и про степеня, и прочие теоремы, но. . . ) найти способ нахождения отношения двух углов. . . .
|
Запуск контейнеров Docker на ARM64
Mr. Docker 09.04.2025
Появление таких решений, как Apple M1/ M2, AWS Graviton, Ampere Altra и Raspberry Pi, сделало использование ARM-систем обыденностью для многих разработчиков и DevOps-инженеров. При этом Docker,. . .
|
Vue SFC компонент на PHP с Fusion
Jason-Webb 09.04.2025
PHP на сервере и JavaScript на клиенте — классическое сочетание, которое, несмотря на свою эффективность, создает определенный когнитивный диссонанс при разработке. В этом контексте появляются. . .
|
TypeScript vs JavaScript: Отличия и когда что использовать
Reangularity 09.04.2025
JavaScript появился в 1995 году как творение Брендана Эйха и быстро стал основой интерактивности в вебе. За свою историю он прошел путь от простого языка для манипуляций с DOM до полноценной. . .
|
Подключение Kafka к Elasticsearch
Codd 09.04.2025
Apache Kafka и Elasticsearch — две мощные технологии, которые при совместном использовании создают эффективную платформу для обработки и анализа данных в реальном времени. Kafka, выступая в роли. . .
|
Реализации таймеров в Unity
GameUnited 09.04.2025
Время — важный ресурс любой игры. Разработка качественных игровых механик невозможна без грамотного управления временем, а таймеры выступают ключевым инструментом этого управления. Представьте себе. . .
|
Функции высшего порядка в JavaScript
run.dev 09.04.2025
Функции высшего порядка представляют собой один из фундаментальных камней функционального программирования в JavaScript. По сути, это функции, которые либо принимают другие функции в качестве. . .
|