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

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

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

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

35 ответов

65 просмотров

На каждое свойство по колонке. Да, она одна, потому почти всегда будет запись 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
это че за сервис такой

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

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

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

#include <stdio.h> #include <stdlib.h> #include <time.h> void mass_first_generate(int mass[5][7]) {     for (int N = 0; N < 5; N++) {         for (int A = 0; A < 7; A++) {   ...
Чувак
6
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Всем привет! Решаю 99 OCaml Problems и столкнулся со следующей проблемой (прошу палками не забивать, я OCaml практически не трогал до этого момента): open OUnit2 let create_...
К|/|pи/\/\ 6е3yглbIи
2
https://www.linkedin.com/posts/ugama-benedicta-kelechi-codergirl-103041300_mobiledevelopment-fluttertraining-handsonlearning-activity-7263445699227254784-IdHB?utm_source=share...
CoderGirl
16
возможно ли как-то передать в электрон или таури медиа поток с рендера 2д движка? двиг запускается как dll, а дальше надо как-то отправлять рендер кодировать не подходит, зр...
Kyle Nekto
7
Ну вот просто даже давайте вот как. Какой нибудь конкретный кейс, можете в пример привести, где бч работает и приносит прикладную пользу, а не просто что бы было? Не крипту.
Alexander Andreev
22
Помогите пожалуйста. Делаю систему плагинов. Проблема сейчас в такая: плагины загружаются в основном потоке. FLibHandle := SafeLoadLibrary(FFileName) Но нужно еще выполнить фу...
Илья 🤣
10
объясните пожалуйста, почему функция не работает должным образом? вроде должно брать активное окно сравнивать его размер с размером экрана, и если есть совпадение = true прове...
JF
12
лучше скажите, причём тут паскаль?
Alexey Kulakov
36
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Карта сайта