@laravel_pro

Страница 1722 из 2014
Varyen
10.08.2018
12:34:15
в зависимости от загрузки и т.п.

Adel
10.08.2018
12:34:58
кластер, который сам внутри себя уже роутит куда писать и откуда читать
я же говорю. логика приложения должна оперделять, что иногда надо считать с мастер-базы а не со слейвов

Google
Maksim (Ellrion)
10.08.2018
12:35:02
Adel
10.08.2018
12:35:21
F01134H
10.08.2018
12:35:45
что такое сложные агрегаты в контексте элоквента?)

Adel
10.08.2018
12:36:00
в контексте элоквента - это чтото невозможное :)))

F01134H
10.08.2018
12:36:09
А в твоем представлении

Varyen
10.08.2018
12:36:14
уж точно не через $_FILES или обертку над ним

Halit
10.08.2018
12:36:39
Adel
10.08.2018
12:36:43
ну самое банальное - заказ и его items

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

и просят его - добавь в себя плиз этот товар.. штуки 3

Google
Adel
10.08.2018
12:38:17
а он уже внутри у себя.. никому неведомо посмотрит - можно ли добавить.

а нельзя взять и сделать $order->items->add(...)

Maksim (Ellrion)
10.08.2018
12:39:14
Даа, джесон получать надо. Но как в Ларе это?
у запроса должен быть хедер CONTENT_TYPE (application/json) и тогда $request->input('key') будет работать корректно, как и ->all() ну или можно принудительно у реквеста потребовать джейсон $request->json('key')

F01134H
10.08.2018
12:39:22
> это агрегат. потому что у него есть сумма.

непонял, как связан агрегат и сумма заказа

Adel
10.08.2018
12:39:41
> это агрегат. потому что у него есть сумма.
ну забей на сумму. это неважно

Halit
10.08.2018
12:39:43
Не понял, что тут не так с этим кейсом в элеквенте?

F01134H
10.08.2018
12:39:46
а нельзя взять и сделать $order->items->add(...)
можно добавить скоуп если очень хочется)

Хз короче, пока не понял в чем проблема

Adel
10.08.2018
12:39:58
важно, что есть заказ и определнные правила внутри него

Halit
10.08.2018
12:40:11
Ок

Едем дальше

Adel
10.08.2018
12:40:47
вообще пример с заказом не очень удачный. но такой вариант. у заказа просят удалить item и если это последний, то его статус оказывается Cancel.

мы не должны снаружи за этим следить

это его внутрнее дело

F01134H
10.08.2018
12:41:35
Ты же понимаешь что можно в слой модели запихать логику как хочешь?

хоть снаружи хоть внутри

Adel
10.08.2018
12:41:44
в ларке как сделают? просто будут $order->items->remove() if($order->items->count() == 0) $order->status = ' cancel';

Maksim (Ellrion)
10.08.2018
12:42:16
Спасибо) Пробовал, но не работает..
что именно ты пробовал. если не работает значит ты что то делаешь не так

Google
Adel
10.08.2018
12:43:17
и на преокте куда я пришел - это юзалось

Maksim (Ellrion)
10.08.2018
12:43:31
Halit
10.08.2018
12:43:36
Адель, где проблема то с элеквентом. Я же жду все.

Edgar
10.08.2018
12:43:49
у него там есть read and write databases. в конфиге.
Костыли для простых кейсов. Это неправильно

Adel
10.08.2018
12:44:04
эх. плохой из меня обьясняльщик :)

костыли для простых кейсов

не считая совсем уж базы

F01134H
10.08.2018
12:44:27
це фреймворк

Edgar
10.08.2018
12:44:43
ну по факту он работает с этим, да и как не должен? очень должен
На выхлопе у тебя скл. Если несколько бд - ок. Но про масштабироаание его не касается

F01134H
10.08.2018
12:44:47
да ладно, не такие уж костыли. Я б сказал пхп костыльный

Halit
10.08.2018
12:44:53
Если вася пупкин минуя, логику приложения, полезет в базу и чето сделате, это проблема элеквента? Вопрос остается открытым.

Maksim (Ellrion)
10.08.2018
12:45:38
На выхлопе у тебя скл. Если несколько бд - ок. Но про масштабироаание его не касается
у меня не просто же билдер у меня орм, следить за коннектами это часть его работы

Adel
10.08.2018
12:46:48
у меня не просто же билдер у меня орм, следить за коннектами это часть его работы
да. но в итоге этим трудно рулить. потмоу что коннект происходит в страшных нутрях элоквента.

Maksim (Ellrion)
10.08.2018
12:46:53
Request r r->all()
так а CONTENT_TYPE установлен?

Adel
10.08.2018
12:47:02
правда не знаю как с этим в доктрине...

Google
Adel
10.08.2018
12:47:08
надо бы глянуть

хотя че думать...

Halit
10.08.2018
12:47:32
Но ведь в элоквенте ты можешь явно выбрать конекшен.

Adel
10.08.2018
12:47:36
там банально две совсем разные модели.

доктрина будет смотреть только на мастер-базу

Maksim (Ellrion)
10.08.2018
12:47:46
правда не знаю как с этим в доктрине...
офигеть! т.е. ты столкнулся с узким кейсом, в ларе он при этом даже решен, но ты бугуртишь при этом не зная как оно бывает иначе?!

вот и весь срачь такой

F01134H
10.08.2018
12:48:12
доктрина будет смотреть только на мастер-базу
я хочу потрогать симфу в принципе, кста можешь еще пропел глянуть

Adel
10.08.2018
12:48:22
пропел разве еще живой?

F01134H
10.08.2018
12:48:26
ну да

Admin
ERROR: S client not available

Adel
10.08.2018
12:48:45
чот не слышал о нем... лет 10 :)))

F01134H
10.08.2018
12:48:46
хотя я не уверен

Adel
10.08.2018
12:49:00
Последняя версия 1.7.1 (25 февраля 2014)

F01134H
10.08.2018
12:49:18
не

там 2 есть

Adel
10.08.2018
12:49:21
тот еще советчик ты :)

F01134H
10.08.2018
12:49:34
https://github.com/propelorm/Propel2

Adel
10.08.2018
12:50:37
последний коммит в феврале

чтото не внушает уверенности :)

Google
Edgar
10.08.2018
12:50:50
Просто элоквент как раз выступает своеобразной прослойкой между бд и приложением. Как устроена бд технически - вообще не его дело.

Шардинг к примеру логичнее определять на уровне БД. С единой так сказать точкой входа в кластер

Maksim (Ellrion)
10.08.2018
12:51:17
https://github.com/propelorm/Propel2
двойка в альфе вроде еще

Adel
10.08.2018
12:51:44
не всегда. обычно шардят сами. причем часто для определения нужного сервера юзают другую, более шуструю бд.

Edgar
10.08.2018
12:51:52
ну.... такое
Наоборот. Иначе просто огребешь геморроя при добавлении нод

Adel
10.08.2018
12:51:55
редис

zVlad
10.08.2018
12:52:11
Adel
10.08.2018
12:52:31
из мастера или слейва.

Maksim (Ellrion)
10.08.2018
12:52:46
Нееее
ну так установи, ты блин прочти что я написал тебе в первом сообщении внимательно блин

Adel
10.08.2018
12:52:55
оно откуда знает собираюсь ли я начать транзакцию на запись или просто считать данные?

Edgar
10.08.2018
12:53:06
из мастера или слейва.
Для начала, я про шардинг, а не репликацию)

Maksim (Ellrion)
10.08.2018
12:53:33
Как поставить?
запрос ты чем делаешь?

Adel
10.08.2018
12:53:55
шардиг - да. есть базы с автошардингом. есть без. юзают и так и так.

zVlad
10.08.2018
12:54:00
запрос ты чем делаешь?
Запрос с телеграма. Вебхуки

Edgar
10.08.2018
12:55:20
оно откуда знает собираюсь ли я начать транзакцию на запись или просто считать данные?
Даже в таком кейсе это должна хендлить бд на основе команд либо спец прослойка между орм и бд

Edgar
10.08.2018
12:56:16
чета ты усложняешь :)
Наоборот. Иначе рано или поздно появится геморрой при масштабировании

Adel
10.08.2018
12:56:42
Наоборот. Иначе рано или поздно появится геморрой при масштабировании
при каком? write модель модно в итоге просто отделить

и тогда проблема исчезнет сама собой. но это уже некст левел

Страница 1722 из 2014