
Borys
11.07.2017
19:18:06
ок, согласен, так безопасней

Sergey
12.07.2017
06:38:27
привет, подскажите плиз лучший способ, если в сущности есть embedded как можно уведомить об изменении его состояния?
уведомить саму сущность

Ivan
12.07.2017
06:47:09
вроде как embedded не мутабельны должны быть желательно

Google

Sergey
12.07.2017
06:57:57
ebmeddable это просто объекты. Идея в том что эти объекты - объекты значения (value objects) а они должны быть имутабельными.
ибо доктрина не чекает измеения внутри Embeddable. Тупо сделай новый объект что бы сравнение по ссылке давало false
это на самом деле очень удобно, если грамотно стэйт на VO поделить.
типа user->updateProfile(profile) вместо кучи сеттеров
и тогда у тебя и для создания юзера и для обновления профиля можно заюзать одинаковый код

Sergey
12.07.2017
07:11:20
у нас mongodb, и есть json объект заказа, у которого товары в отдельном поле лежат. Тут тоже embedded получается плохая идея да? Задача вроде простая, я делаю $product->addQuantity(1); и мне нужно пересчитать сумму заказа
а понял, я просто создаю новый объект, с новым количеством

vlad
12.07.2017
07:33:49
ребят
всем привет
как правильно включить в Process("команда") вывод всего, что там выводится через $output->... и echo в файл?
и ещё вопросик:
можно ли делать так:
$process = new Process("команда && команда");
?

Константин
12.07.2017
07:35:26
А если проверить? :)

Google

vlad
12.07.2017
07:37:09
ну с выводом в файл сложно проверить)
сделал так, как написано в мане
и что-то в файле ничего не вижу :(

Константин
12.07.2017
07:38:06
Что значит вывод в файл? В файл php пишет?

vlad
12.07.2017
07:40:40
я запускаю поцесс
через new Process()
и весь вывод в файл из него
в процессе запускается команда

Константин
12.07.2017
07:41:13
Покажи строчку, которая пишет в файл?

vlad
12.07.2017
07:41:24
я про неё и спрашиваю)
$process = new Process('cat');
$process->setInput('file.txt');
типа такого, только это не работает под вывод из команды

Константин
12.07.2017
07:46:35
Не смущает, что это input, а не output?

vlad
12.07.2017
07:47:05
это как пример
я же и спрашиваю
как сделать output

Константин
12.07.2017
07:47:51
$process = new Process('echo 1');
$process->run();
file_put_contents('file.txt', $process->getOutput());
Либо в run отправить callback, если там большой вывод

vlad
12.07.2017
07:48:31
спасибо, сейчас попробую
Константин, можно ещё вопрос?

Google

vlad
12.07.2017
07:53:34
Я не особо в английский, и переводчик не очень помогает
Чем отличается run() от start()?

Dmitriy
12.07.2017
07:54:01
бежать() стартовать()

vlad
12.07.2017
07:54:16
спасибо)
а в symfony?)

Константин
12.07.2017
07:55:43
run() = start() + wait()
Это же без английского видно по коду :)

vlad
12.07.2017
07:57:55
спасибо :)
run() = start() + wait()

Yuriy
13.07.2017
07:52:03
всем привет,
подскажите пожалуйста как можно передавать в обработчик события параметры или друге сервисы

Sergey
13.07.2017
07:52:48
регистрируешь свой обработчик как сервис и передаешь в конструктор как обычно все

Alexey
13.07.2017
07:53:16

Yuriy
13.07.2017
07:57:21
как обычно уже пробовал, и получил ошибку

Yuriy
13.07.2017
07:57:24
описывал сервис/слушатель:
tbundle.security.interactive_login_listener:
class: TBundle\Listeners\AuthenticationListener
arguments: [ '@doctrine.orm.entity_manager', '@logger']
tags:
- { name: kernel.event_listener, event: security.interactive_login, method: onAuthenticationSuccess }

Boris
13.07.2017
08:00:06
app.event_listener.action_income_params_validation:
class: AppBundle\EventListener\ActionValidationListener
tags:
- { name: kernel.event_listener, event: kernel.request, method: onKernelRequest, priority: 0 }
arguments: ["@app.respondent", "@validator"]
вот рабочий вариант
возьми за основу

Dmitriy
13.07.2017
08:00:41
можно сделать subscriber, в конструктор пробросить зависимости, autowire сам разберется

Yuriy
13.07.2017
08:00:54
да загляну в строку 3395
вижу
return $this->services['tbundle.security.authentication_failure_event_listener'] = new \TBundle\Listeners\AuthenticationListener();
где нет никаких параметров

Google

Sergey
13.07.2017
08:07:19

Yuriy
13.07.2017
08:10:02
чистил,
и rm ...
в том числе
параметры не появляются

Gennady
13.07.2017
08:55:53

Yuriy
13.07.2017
08:57:12
имя класа соответствует

Gennady
13.07.2017
08:58:03
А имя сервиса нет, для этого сервиса наверное не прописаны arguments

Admin
ERROR: S client not available

Dmitry
13.07.2017
09:53:54
Какой тип в mysql использовать для хранения баланса (денег)?
int, bigint, decimal?

Dmitriy
13.07.2017
09:55:09
храни копейки в int
если копеек очень много храни в бигинт

Dmitry
13.07.2017
09:56:28
обычно так и делал, а тут решил погуглить
нарвался на тыщу мнений
буду делать как всегда )

Dmitriy
13.07.2017
09:57:41
ну единного мнения нет )

Sergio
13.07.2017
10:41:42
всем привет)

Sergey
13.07.2017
13:18:49
ну вообще везде свои головняки
double - вечная борьба с плавающей точкой
decimal - конвертации обратно в double на пхп
int/bigint - приведение обратно к дробному числу
недавно обсуждали в пхп руме

Dinar
13.07.2017
13:40:21
String? :)))

Gleb
13.07.2017
13:41:59
bool

Dinar
13.07.2017
15:02:45
Ну я всмысле varchar

.fry
13.07.2017
15:18:32
Тогда уж text, а то вдруг сумма большая будет

Google

Dinar
13.07.2017
15:18:59
:D

Andrew
13.07.2017
15:53:10

Dinar
13.07.2017
18:19:25
Text?
Он наверно сериализует объект.

Bohdan
13.07.2017
18:35:33

Dinar
13.07.2017
18:41:15
Вот это сериализация!

Valentin
13.07.2017
19:47:59

(;¬_¬)
14.07.2017
06:22:06

Denis denya Voskoboinik
14.07.2017
06:23:26
децимал и флоат абсолютно разые вещи
и децимал хранит без погрешности

Jan
14.07.2017
06:24:59
Кто знает, в Доктрине можно fetch EAGER указать для конкретного запроса?

Denis denya Voskoboinik
14.07.2017
06:26:49
можно в dql
но лучше написать свой метод с джойнами нужными)
Есть вопрос!)
Кто как группирует одинаковые запросы в репозитории?
ну вот например мне нужно выбрать все заказы активных клиентов.
Для этого нужно приджойнить клиентов и where active = 1.
но тут мне нужно еще один запрос с активными клиентам. логично часть эту вынести для общего пользования другими методами. Кто как это делает?

Dmitriy
14.07.2017
06:48:13
спецификации?

Denis denya Voskoboinik
14.07.2017
06:50:40
да, что-то типа спецификаций, хочу посомтреть как кого реализовано)