А если на один домен, типа сложно сделать, или просто плохо?

|
jimgittex 2022-06-30 20:28:01
фронт вообще лучше вынести в отдельный репозиторий
yanal20 2022-06-30 20:28:07
bearlogin 2022-06-30 20:26:44
сделай 2 docker контейнера, и там и там nginx

А если без докера?

bearlogin 2022-06-30 20:28:34
yanal20 2022-06-30 20:28:07
А если без докера?

так проще с докером, не надо парится с окружением

yanal20 2022-06-30 20:28:40
jimgittex 2022-06-30 20:28:01
фронт вообще лучше вынести в отдельный репозиторий

Есть два репо

yanal20 2022-06-30 20:29:20
Но один домен
jimgittex 2022-06-30 20:29:31
yanal20 2022-06-30 20:28:40
Есть два репо

для фронта настраивай отдельный nginx что бы он работал только со статикой

для апи отдельный что бы он работал с php-fpm

папки можешь ложить куда угодно

jimgittex 2022-06-30 20:29:58
yanal20 2022-06-30 20:29:20
Но один домен

на один домен не надо… лучше сделай два project.ru && api.project.ru

bearlogin 2022-06-30 20:29:58
yanal20 2022-06-30 20:28:40
Есть два репо

ну тогда сделать в nginx location /api {тут прокси до php fpm}, location / {index до билд папки реакта}

bearlogin 2022-06-30 20:30:38
jimgittex 2022-06-30 20:29:58
на один домен не надо… лучше сделай два project.ru && api.project.ru

да однойухственно

yanal20 2022-06-30 20:33:10
А если на один домен, типа сложно сделать, или просто плохо?
jimgittex 2022-06-30 20:33:58
yanal20 2022-06-30 20:33:10
А если на один домен, типа сложно сделать, или просто плохо?

просто плохо, потом могут быть сложности

jimgittex 2022-06-30 20:35:20
но если проект небольшой и не планируется масштабирование, то нормально будет и на одном домене
jimgittex 2022-06-30 20:35:48
и мобильного приложение не планируетс
yanal20 2022-06-30 20:36:41
jimgittex 2022-06-30 20:35:20
но если проект небольшой и не планируется масштабирование, то нормально будет и на одном домене

А как хорошо сделать если на один домен?

yanal20 2022-06-30 20:37:01
Типа очень кратко
jimgittex 2022-06-30 20:37:08
тебе выше писали, два разных локейшена и в них разные настройки
jimgittex 2022-06-30 20:37:22
читай доку по nginx или гугли примеры
yanal20 2022-06-30 20:38:09
Понятно, спасибо ребята!
trin4ik 2022-07-01 00:37:44
А кто с сокетами работает активно?
У меня есть 2 типа пользователей, например. Водилы и Диспетчеры.
И те и другие могут отбивать статус заказа.
При отбитии статуса дёргаю event, который пишет лог, ходит по апи если надо и, конечно, броадкастит.
Новые данные в сокет отправляю через broadcastWith, возникло желание слать разные данные в зависимости от типа пользователя. Водила получает свою структуру заказа, манагер свою. Ну т.е. в зависимости от канала отправлять разные данные. Посмотрел сорсы, возможности такой нет.

И я вот понять не могу, я что-то делаю не так или такая проблема только у меня возникла?

slwpkd 2022-07-01 00:39:57
trin4ik 2022-07-01 00:37:44
А кто с сокетами работает активно?
У меня есть 2 типа пользователей, например. Водилы и Диспетчеры.
И те и другие могут отбивать статус заказа.
При отбитии статуса дёргаю event, который пишет лог, ходит по апи если надо и, конечно, броадкастит.
Новые данные в сокет отправляю через broadcastWith, возникло желание слать разные данные в зависимости от типа пользователя. Водила получает свою структуру заказа, манагер свою. Ну т.е. в зависимости от канала отправлять разные данные. Посмотрел сорсы, возможности такой нет.

И я вот понять не могу, я что-то делаю не так или такая проблема только у меня возникла?

А если подписать водил и менеджеров на разные каналы?

trin4ik 2022-07-01 00:42:34
slwpkd 2022-07-01 00:39:57
А если подписать водил и менеджеров на разные каналы?

так и есть, они на разных каналах сидят. один ивент «обновление статуса заказа» срёт сразу в несколько каналов. водилы подписаны на своих, диспетчеры на своих. вот мне в момент broadcastWith и надо понять, в какой канал сейчас уходят данные. но физически это сделать в данный момент не получится, т.к. лара срёт сразу всем.

делать 2 ивента, чтобы в разные каналы слать разные данные? ну как-то некрасиво

slwpkd 2022-07-01 00:44:49
trin4ik 2022-07-01 00:42:34
так и есть, они на разных каналах сидят. один ивент «обновление статуса заказа» срёт сразу в несколько каналов. водилы подписаны на своих, диспетчеры на своих. вот мне в момент broadcastWith и надо понять, в какой канал сейчас уходят данные. но физически это сделать в данный момент не получится, т.к. лара срёт сразу всем.

делать 2 ивента, чтобы в разные каналы слать разные данные? ну как-то некрасиво

Да, данные ведь разные, можно все данные слать в один канал, которые нужны и тем и другим

Adelf32 2022-07-01 00:45:10
trin4ik 2022-07-01 00:42:34
так и есть, они на разных каналах сидят. один ивент «обновление статуса заказа» срёт сразу в несколько каналов. водилы подписаны на своих, диспетчеры на своих. вот мне в момент broadcastWith и надо понять, в какой канал сейчас уходят данные. но физически это сделать в данный момент не получится, т.к. лара срёт сразу всем.

делать 2 ивента, чтобы в разные каналы слать разные данные? ну как-то некрасиво

это очень красиво и правильно)

trin4ik 2022-07-01 00:46:52
https://github.com/laravel/framework/blob/2bc180295ebf8c4848a6b9c4ae8fa0d00ec75217/src/Illuminate/Broadcasting/BroadcastEvent.php#L81

тут лара собирает данные для отправки и без разбора шлёт во все коннекты
$payload = $this->getPayloadFromEvent($this->event);

foreach ($connections as $connection) {
$manager->connection($connection)->broadcast(
$channels, $name, $payload
);
}
вопрос в общем-то простой ) я либо делаю что-то не так, либо надо PR писать? задача то, вроде, очевидная.

Ещё более простой пример.
Пользователь написал коммент под постом, есть 2 канала, например: «Post.123.Comments» и «Admin.Comments». В первый канал попадают комменты поста, любой пользователь подписывается на него при заходе в пост. Второй канал для админа, чтобы видеть в админке комменты. И логично, что админу я хочу отправить доп. данные, типа ip пользователя, что написал коммент и прочую дебаг инфу.

Неужели мне для этого надо делать 2 разных ивента? ивент то по логике один — пользователь оставил коммент.

framework/BroadcastEvent.php at 2bc180295ebf8c4848a6b9c4ae8fa0d00ec75217 · laravel/frameworkGitHub
The Laravel Framework. Contribute to laravel/framework development by creating an account on GitHub.
trin4ik 2022-07-01 00:51:21
или из одного ивента UserCreateComment в хэндле броадкастить 2 ивента со своими каналами… но тоже как-то не нравится
Galifax94 2022-07-01 01:36:50
Здравствуйте, как добавить не тестовый домен в мейлгане? Нет тако возможности, или какой лучше использовать смтп с ларавель?
puspenskiy 2022-07-01 01:53:09
trin4ik 2022-07-01 00:51:21
или из одного ивента UserCreateComment в хэндле броадкастить 2 ивента со своими каналами… но тоже как-то не нравится

лучше просто создать событие одно. Повесить 2 листнера. одно менеджерам, другое водилам. Это логично. тк они разные по содержанию и каналы разные.

trin4ik 2022-07-01 01:53:45
Galifax94 2022-07-01 01:36:50
Здравствуйте, как добавить не тестовый домен в мейлгане? Нет тако возможности, или какой лучше использовать смтп с ларавель?

biz.mail.ru вполне работает

puspenskiy 2022-07-01 01:55:26
Galifax94 2022-07-01 01:36:50
Здравствуйте, как добавить не тестовый домен в мейлгане? Нет тако возможности, или какой лучше использовать смтп с ларавель?

что есть не тестовый домен?

trin4ik 2022-07-01 01:56:06
puspenskiy 2022-07-01 01:53:09
лучше просто создать событие одно. Повесить 2 листнера. одно менеджерам, другое водилам. Это логично. тк они разные по содержанию и каналы разные.

сейчас я прям с ивентов пушу в каналы. т.е. Event::dispatch(), а ивент ShouldBroadcast, с соответствующими методами. вот думаю, как сделать красиво и не городить на каждое событие ещё по 2

trin4ik 2022-07-01 01:56:40
puspenskiy 2022-07-01 01:55:26
что есть не тестовый домен?

они бесплатно не дают возможности привязать свой домен для рассылок

puspenskiy 2022-07-01 01:58:50
trin4ik 2022-07-01 01:56:06
сейчас я прям с ивентов пушу в каналы. т.е. Event::dispatch(), а ивент ShouldBroadcast, с соответствующими методами. вот думаю, как сделать красиво и не городить на каждое событие ещё по 2

что значит сразу с event-ов?

puspenskiy 2022-07-01 01:59:21
broadcast(new Message(text))? так чтоли?
trin4ik 2022-07-01 02:00:13
дедаю dispatch ивента, как написал выше, в ивенте broadcastOn, broadcastWith итп
trin4ik 2022-07-01 02:02:14
как в доке крч
puspenskiy 2022-07-01 02:04:01
trin4ik 2022-07-01 02:00:13
дедаю dispatch ивента, как написал выше, в ивенте broadcastOn, broadcastWith итп

поменяйте на
event(new Message()); в listener создайте 2 слушателя на message
ManagerListener -> broadcast(new ManagerMessage(data))
DriverListener -> broadcast(new DriverMessage(data))

trin4ik 2022-07-01 02:07:00
puspenskiy 2022-07-01 02:04:01
поменяйте на
event(new Message()); в listener создайте 2 слушателя на message
ManagerListener -> broadcast(new ManagerMessage(data))
DriverListener -> broadcast(new DriverMessage(data))

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

puspenskiy 2022-07-01 02:10:08
trin4ik 2022-07-01 02:07:00
ну пока только так и получится. этим и не ноавится данный подход, т.к. ивентов много, и на каждый надо генерить 2 сообщения. хотя всё, чем они различаются, это путь до ресурса

можно передавать в сообщении лишнии поля, а уже на фронте смотреть на роль пользователя и брать нужное

puspenskiy 2022-07-01 02:11:18
типа manager_link и admin_link. а в js определтяь роль и выводить нужное поля/поле
trin4ik 2022-07-01 02:11:42
puspenskiy 2022-07-01 02:10:08
можно передавать в сообщении лишнии поля, а уже на фронте смотреть на роль пользователя и брать нужное

несекурно )

puspenskiy 2022-07-01 02:11:54
trin4ik 2022-07-01 02:11:42
несекурно )

ну это да

kongow 2022-07-01 02:12:32
Здравствуйте. Какая разница между полями guarded и hidden в модели?
puspenskiy 2022-07-01 02:12:55
kongow 2022-07-01 02:12:32
Здравствуйте. Какая разница между полями guarded и hidden в модели?

в названии

trin4ik 2022-07-01 02:13:21
puspenskiy 2022-07-01 02:11:54
ну это да

в общем да, и так крутил и эдак, единственный выход, это в листенере вызывать два новых ивента через broadcast. очень не хочется так делать, но, видимо, придётся

puspenskiy 2022-07-01 02:13:56
trin4ik 2022-07-01 02:13:21
в общем да, и так крутил и эдак, единственный выход, это в листенере вызывать два новых ивента через broadcast. очень не хочется так делать, но, видимо, придётся

добавить очередей больше и все

trin4ik 2022-07-01 02:14:13
kongow 2022-07-01 02:12:32
Здравствуйте. Какая разница между полями guarded и hidden в модели?

$hidden скрывает поля, $guarded запрещает их изменять через create/update

kongow 2022-07-01 02:14:48
trin4ik 2022-07-01 02:14:13
$hidden скрывает поля, $guarded запрещает их изменять через create/update

Спасибо)

puspenskiy 2022-07-01 02:14:59
trin4ik 2022-07-01 02:14:13
$hidden скрывает поля, $guarded запрещает их изменять через create/update

тема не раскрыта

puspenskiy 2022-07-01 02:20:04
Давно уже в доку не лазил. Нужно память освежить. Может что-то новое завезли а ты не знаешь
trin4ik 2022-07-01 02:37:30
puspenskiy 2022-07-01 02:20:04
Давно уже в доку не лазил. Нужно память освежить. Может что-то новое завезли а ты не знаешь

$hidden`скрывает поля в моделе, скрыл `$password и можешь без страха передавать модель на фронт. $guarded это антагонист $fillable. Только если в $fillable ты перечисляешь поля, которые можешь накидывать через create/update методы, в $guarded же наоборот, указываешь какие запрещаешь, остальным можно

|