169 похожих чатов

Посдкажите бедному новичку, где лучше хранить телефоны, адрес, режим работы,

реквизиты и прочую контактно-рабочую информацию компании?

Спросил у чата ГПТ, говорит, мил человек, создавайте модель Organization. Но зачем моделью, если организация одна?

35 ответов

73 просмотра

На каждое свойство по колонке. Да, она одна, потому почти всегда будет запись Organization::first() для получения только одной.

ну можешь Contacts, key => value

@@- Автор вопроса
Oleksandr 🌵
На каждое свойство по колонке. Да, она одна, потом...

А если подразумевается мультсайтинг с поддоменами,то как раз из этой модели и будут подббираться данные, верно?

@@- Автор вопроса

Вопрос, а как в хедере/футере вызвать, например, данные? Для них же нет контроллеров. Можно ли в laravel поместить это каким-то образом, чтобы типа $this->phone получать в каждом конроллере

@@
Вопрос, а как в хедере/футере вызвать, например, д...

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

@@- Автор вопроса
PSYTRGLES
можешь компонент шапки сделать, в него заинжектить...

А если текст нужно помимо шапки в тексте страницы получить?

@@
А если текст нужно помимо шапки в тексте страницы ...

зависит от того в каком месте страницы. может это конкретная страница и у нее есть контроллер - тогда в контроллере вызываешь сервис. если это какой-то компонент, то опять же в компоненте. всё через сервис. кто-то это называет репозиторием, но это не он. это просто сервис, который отвечает за выборку контактов, возможно, их форматирование и может иметь кеширование.

@@- Автор вопроса

Предположим, что у меня есть страница, на которой телефон есть в шапке, в тексте, в футере. Получается, я три раза стучаться буду в БД? Даже, если через компоненты сделать

ты можешь на лету удалять эти символы, оставляя только цифры. а по поводу json - лучше не надо. сделать отдельную таблицу.

@@- Автор вопроса
PSYTRGLES
ты можешь на лету удалять эти символы, оставляя то...

В сервисе, не в blade же это делать? (подумал, может функция laravel есть, и можно в blade)

@@
В сервисе, не в blade же это делать? (подумал, мож...

нууу.. я делал в blade, но я этим не горжусь )

@@
В сервисе, не в blade же это делать? (подумал, мож...

а если серьезно, то у тебя сервис может иметь метод getPhone() который вернет номер телефона и может быть getClearPhone getNumberPhone или getFormattedPhone ща пацаны поскажут как лучше методы назвать

@@
В сервисе, не в blade же это делать? (подумал, мож...

там 1 строка регулярка. удаляешь всё что не \d

@@- Автор вопроса
PSYTRGLES
а если серьезно, то у тебя сервис может иметь мето...

Вот так норм? Сервис: class ContactService { public function getOrganizationContacts() { return Cache::remember('organization_contacts', now()->addHours(1), function () { return Branch::first(); }); } public function onlyNumbers($phoneNumber) { return preg_replace('/\D/', '', $phoneNumber); } } Blade: {{ $contactService->onlyNumbers($branch->phone_2) }}

@@
Вот так норм? Сервис: class ContactService { ...

а почему ты данные снаружи передаешь. пусть твой сервис как репа содержит данные, и гетеры которые будут возвращать, так то тебе надо гонять и сервис и данные для него

@@- Автор вопроса
@@- Автор вопроса

Сори, группа не позволяет

@@- Автор вопроса

https://ibb.co/4gkvhrH

Херню посоветовал, интерфейсы надо внедрять

G Palyan
Херню посоветовал, интерфейсы надо внедрять

Если хочешь повышение к зп, то называй их контрактами

@@
https://ibb.co/4gkvhrH

ну я ничего не вижу, но по интуиции прочитал, увидел там репозиторий... ну да, но без репы

@@
https://ibb.co/4gkvhrH

хотя не, там не так как я описал выше

@@- Автор вопроса
G Palyan
Херню посоветовал, интерфейсы надо внедрять

Вот так? https://ibb.co/pQHrz8c Соре, я пока по матчасти до этого не добрался

@@
Вот так норм? Сервис: class ContactService { ...

getOrganizationContacts - это может быть у тебя конструктор. создал сервис - вытащил данные. положил их в $this->contacts или по свойствам разложил $this->phone $this->address и потом в методах-гетерах getPhone() обращаешься на свойства return $this->phone. можно даже сразу и подготовить номер, очистив символы, что бы при каждом обращении не повторять регулярку. это, конечно, не единственный вариант, но простой и доступный.

@@- Автор вопроса
@@
От так? https://onlinephp.io/c/1fb29

$clean = false вот это такое себе будет. лучше отдельный метод getCleanPhone

@@
От так? https://onlinephp.io/c/1fb29

это че за сервис такой

@@
От так? https://onlinephp.io/c/1fb29

getPhone() return $this->phone getCleanPhone() return preg_replace()

Evgenii
это че за сервис такой

ему надо контактную информацию по страницам отображать

@@- Автор вопроса
Evgenii
это че за сервис такой

Для получение контактной инфы

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта