
Chupa
08.04.2018
14:36:17
Я как маконенавистик также добавлю, что полгода работал на маке и постоянно что-то отваливалось
если опять придется на нем работать, только через docker буду

Dmitry
08.04.2018
14:37:15
можно просто виртуалку поставить как бы

Chupa
08.04.2018
14:37:33
я пытался vagrant использовать, но очень медленно работало все

Google

Вадим Натаркин
08.04.2018
14:37:56
что с port mapping понятно? nginx-proxy и т.п. и тебе не нужен port mapping как таковой. по поводу mounded volumes - NFS или docker-sync
по поводу port mapping, если серверу нужно контроллировать все порты используют bridge, на маке это практически не возможно особенно в новых версиях докера, bridge режим только на linux. Спасибо, по поводу nfs и docker-sync хотел услышать коммент. я использовал более скоростное решение это Unison как более быструю файловую систему, очень быстро работает но постоянно docker-compose нужно свой писать
networks:
default:
driver: bridge
ipam:
driver: default
config:
- subnet: 172.31.1.0/24
internal:
driver: bridge
ipam:
driver: default
config:
- subnet: 172.31.2.0/24

Chupa
08.04.2018
14:37:58
а так пару раз были случаи, когда приходя на работу полдня пытался понять что сломалось и как починить

Dmitry
08.04.2018
14:39:23
если медленно, скорее всего причина в диске, можно эксперементировать вплоть до nfs
а сравнивал кто докер с виртуалбоксом и докер с Hyperkit-ом на маке по производительности?

Sergey
08.04.2018
14:44:28

Вадим Натаркин
08.04.2018
14:45:31
круто

Vladislav
08.04.2018
14:48:35

Вадим Натаркин
08.04.2018
14:48:53
docker-sync использует unison
точно, вот я его и использовал, и писал под себя yml файлы. запуская docker-compose -f my-config.yml все потому что на prod и windows этот unison не нужен

Sergey
08.04.2018
14:48:54

Вадим Натаркин
08.04.2018
14:49:27
я искал что-то по проще

Sergey
08.04.2018
14:49:39
docker-compose -f docker-compose.yml -f docker-compose.osx.yml

Google

Sergey
08.04.2018
14:50:05
NFS и терпимая производительность зато попроще
да и думаю с того времени как ты docker-sync юзал у них схема чуть поменялась (за счет native osx файловой системы)
ну короч не могу сказать что это "сложно"

Вадим Натаркин
08.04.2018
14:53:41
понятно

Максим
08.04.2018
14:58:53
Как из ChoiceType сделать вид Radio-Buttons?
$builder->add('state', ChoiceType::class, array('placeholder' => 'Состояние',
'choices' => [
'Offline' => 'Offline',
'Online' => 'Online'
]
));
Что бы он не как SELECT выводил, а как кнопки

Sergey
08.04.2018
15:00:32
multiple => true

Максим
08.04.2018
15:04:28
$builder->add('state', ChoiceType::class, array('placeholder' => 'Состояние',
'choices' => [
'Offline' => 'Offline',
'Online' => 'Online'
],
'multiple' => true
));
Что то не получается)
Почитал в инете. Норм инфы не смог найти

Sergey
08.04.2018
15:05:13
expanded => true тож допиши

Максим
08.04.2018
15:06:43

Andrew
08.04.2018
16:44:14

Максим
08.04.2018
16:45:36

Urmat
08.04.2018
16:53:03
Парни, а можно $form->handleRequest( $request ); вызвать без валидации? Смысл данной задачи в том, что на контроллер попадает форма из двух точек.
В первой генерируется часть данных формы и предлагается дозаполнить,
А вторая точка это как раз где пользователь дополняет эту форму

Елнур
08.04.2018
16:54:02
http://symfony.com/doc/current/form/disabling_validation.html

Urmat
08.04.2018
16:54:03
Но когда пользователь попадает на страницу, где вызывается $form->handleRequest( $request ); срабатывает валидация и он видит ошибки валидации

Елнур
08.04.2018
16:54:17

Google

Елнур
08.04.2018
16:55:16
или вот здесь пример с callback https://stackoverflow.com/questions/17104501/skip-validation-if-sibling-checkbox-field-contains-false

Urmat
08.04.2018
16:57:59
Что то вроде этого?
Я попробовал вот так:
$form = $this->createForm( ReservationFormType::class, $this->buildReservationForm( $request ), [
'validation_groups' => false,
] );
$form->handleRequest( $request );
Только не кидайтесь тапками, оно все равно не сработало

Pavel
08.04.2018
19:25:17

Bohdan
08.04.2018
19:26:05

Pavel
08.04.2018
19:26:49

Bohdan
08.04.2018
19:27:20

Pavel
08.04.2018
19:27:59

Вадим Натаркин
08.04.2018
19:28:50

Vlad
08.04.2018
19:55:01
а разработке не мешает?
уже месяца 3-4 как можно юзать. ~ в 3 раза быстрее респонс, чем без флага. проблем пока не было

Anton
08.04.2018
21:34:37
Всем дратути, может кто видел какую-то реализацию такой беды - нужно, чтоб пользователь мог настраивать результат выборки сущностей (всякие бетвины, больше, меньше, и/или). Изначально подумал про конвертер экспрешн ленгвидж выражений в доктриновские критерии, но как-то это попахивает костыльным велосипедом - может, уже что придумали?

Ilya
08.04.2018
21:39:40
придумываешь свой синтаксис запроса, создаешь классы для пхп, пилишь парсер из своего синтаксиса в пхп объекты и конвектор в доктрину
можешь у меня в репе посмотреть, недавно пилил ебалу по типу

Anton
08.04.2018
21:45:20
А можно ссылку? Вообще, запилить можно и с нуля, но если уже есть какие-то новые решения, то можно их заюзать, или хотя бы вдохновиться
*готовые, чертов т9

Ilya
08.04.2018
21:46:54
а тебе для каких нужд, если не секрет?)

Konstantin
08.04.2018
21:50:51

Vladislav
08.04.2018
21:54:29

Google

Anton
08.04.2018
21:56:31

Vladislav
08.04.2018
21:56:45
та не)

Ilya
08.04.2018
21:58:17
карочи на
это тестовое к одним ребятам. и если ты выполняешь именно его, то знай, что они уебки)
https://github.com/ElijahKaftanov/user-filter

Anton
08.04.2018
21:58:39
а тебе для каких нужд, если не секрет?)
Не секрет, конечно) В админке для акционного товара понадобилось, чтоб под каждую акцию не писать сервис/метод в репозитории, а дать возможность контент-менеджеру самому условия натыкивать
Спасибо, будем посмотреть)
когда уже в пхп дженерики завезут?

Timur
08.04.2018
23:25:04

Anton
08.04.2018
23:28:20
как вариант, чтоб при использовании стандартных методов из доктриновского репозитория иметь нормальный тайпхинтинг, а не жонглировать вкладками в ide, ну и как бонус - не плодить кучу классов из серии UserCollection, ProductCollection, а заюзать Collection<User>

Timur
08.04.2018
23:36:11
как вариант, чтоб при использовании стандартных методов из доктриновского репозитория иметь нормальный тайпхинтинг, а не жонглировать вкладками в ide, ну и как бонус - не плодить кучу классов из серии UserCollection, ProductCollection, а заюзать Collection<User>
Опять же, в PHP типизация нестрогая, а дженерики завязаны на типах. В ПХП это какие-то недодженерики получатся. По сути, они итак есть, раз мы можем разные объекты сохранять в один массив, просто нет никаких проверок. Что же, добавлять дженерики просто как синтаксический сахар?
Разве цель дженериков не дать нам возможность хранить экземпляры разных классов в одной коллекции? Так в пхп это итак можно

Anton
08.04.2018
23:38:23
некорректно выразился, конечно кроме тайпхинтинга еще ошибки должны быть при попытке запихнуть в такую коллекцию невалидный объект, и юзать дженерики никто не заставлят (как и ретурн тайпы) - все на совести клиента-разработчика

Dmitry
08.04.2018
23:56:43

Timur
09.04.2018
00:01:31

Dmitry
09.04.2018
00:27:36

Timur
09.04.2018
00:28:22

Dmitry
09.04.2018
00:31:09
может научишь? или только в чатике выпендриваться можешь? ;)
Ну ладно, иди учи тогда, что такое сильная типизация
А то читаю, вот, википедию, In 1974, Liskov and Zilles defined a strongly-typed language as one in which "whenever an object is passed from a calling function to a called function, its type must be compatible with the type declared in the called function." - и не понимаю, почему PHP с хинтами на параметры и strict типами не подходит. Расскажешь?

Timur
09.04.2018
01:57:46

Google

Timur
09.04.2018
02:03:44


Sergey
09.04.2018
06:01:21
когда операция "foo" + 123 кинет ошибку
p.s. php, как и Си или Java - языки со слабой типизацией
ну и другой пример
interface Transformer<T> {
public function transform(T $data): array;
}
либо
interface Validator<ValidationRule, Data> {
validate(Data $data, ValidationRule $rule);
}
коллекции - постольку поскольку
ну и слабая или там сильная система типов, это все довольно второстепенно в этом контексте. Да и strict_types было введено в php именно для того что бы предоставить мягкий переход к более сильной системе типов... не знаю смогут ли они к 8-ой или 9-ой версии php сделать полный переход на сильную систему типов, но я не доживу наверное


Konstantin
09.04.2018
07:01:01
батя скинь по вотерам ченить почитать грамотное только плиз не офф доку )
оф доку прочитал но как организовать всеравно не совсем понял

Dinar
09.04.2018
07:03:04

Sergey
09.04.2018
07:03:55
в питоне никто не пытается страдать такой глупостью как проверка типов в рантайме, там просто сильная система типов не допускающая кастов. Там все четко.

Bohdan
09.04.2018
07:04:17

Dinar
09.04.2018
07:05:11

Sergey
09.04.2018
07:05:34
имхо оптимальный вариант, не сложно но и не так убого как в php

Dinar
09.04.2018
07:05:58
Но без дженериков.