Sergei
ОК, принял) тоже работается хорошо по ночам?
Судя по моим ответам - не очень)
Константин
Судя по моим ответам - не очень)
Ах ха, ну это уже можно сказать утро было, так что не в счет)
Alexander
Привет. На симфони 4 почему то, уже долгое время команды которые выполняются кроном выдают ошибку из-за чтения сущности из кэша, появилось при переводе в продакшин. Сталкивался кто то, есть решения? Проблем с правами нет, а 500-е частые
Alexander
Ох, что то такое страшное)) php.CRITICAL: Fatal Compile Error: require(): Failed opening required '/var/www/vhosts/mister-register.com/httpdocs/var/cache/prod/doctrine/orm/Proxies/__CG__AppEntityMainApplications.php' (include_path='/var/www/vhosts/mister-register.com/httpdocs/vendor/phpseclib/phpseclib/phpseclib:.:/opt/plesk/php/7.3/share/pear') {"exception":"[object] (Symfony\\Component\\ErrorHandler\\Error\\FatalError(code: 0): Compile Error: require(): Failed opening required '/var/www/vhosts/mister-register.com/httpdocs/var/cache/prod/doctrine/orm/Proxies/__CG__AppEntityMainApplications.php' (include_path='/var/www/vhosts/mister-register.com/httpdocs/vendor/phpseclib/phpseclib/phpseclib:.:/opt/plesk/php/7.3/share/pear') at /var/www/vhosts/mister-register.com/httpdocs/vendor/doctrine/common/lib/Doctrine/Common/Proxy/AbstractProxyFactory.php:204)"} Выяснил что проблема в доктрине, для прода же auto_generate_proxy_classes становится false. Как вариант прогревать кэш после очистки, то есть добавить в композер настройки, в раздел auto-scripts - cache:warmup выполнять, попробую, но конечно дико видеть такое на проде.
artem
Всем привет. Тупой вопрос при создании поста нужно добавить существующую категорию. Не пойму как это добавить в формтайп
artem
похоже на это https://symfony.com/doc/current/reference/forms/types/entity.html
Похоже. Не понимаю этот тайп. Это чойз?
Daria
Похоже. Не понимаю этот тайп. Это чойз?
да, типа подтягивает данные из релейтед энтити и чойсом отображает
Anonymous
Тебе ид нужно туда передать а это чойз
Alexander
Прогреть кэш перед деплоем это не дичь, это правильно
Прогреть не дичь, но удивительно что нужная вещь не по умолчанию идет) Не более)
Юра
Это нарушение святого правила single responsibility
Юра
Прогреть одна команда, почистить другая
Юра
Хотя удобно было бы типо cache:clear --warmup
Юра
Да и вообще когда много всего происхобит по умолчанию само по себе это обычно потом вызыает гнев и негодование
Юра
А кто-то использует симфонийский компонент String?
Юра
Я вот приятно удивился сегодня что есть такая штука
Юра
Это первый компонент который нормально преобразовал строку вида serverFTPSettings в server_ftp_settings
Юра
Другие делали server_f_t_p_settings
Юра
В доктрине бесило
Константин
Ребят, симфони может блокировать CORS?
Константин
NelmioCORSBundle в помощь
А как то отключить cors можно?
Sergei
А как то отключить cors можно?
Он отключен по умолчанию в дефолтном варианте
Константин
Он отключен по умолчанию в дефолтном варианте
А почему тогда локалке выдает cors?
Константин
Константин
Какие то запросы проходят, какие то нет
Sergei
Причем тут корс?
Alexander
Cors -это междоменные передачи данных.. 500-ю можно через профайлер легко понять.
Anonymous
А почему тогда локалке выдает cors?
https://www.google.com/amp/s/blog.liplex.de/symfony-cors-listener/amp/
Константин
Причем тут корс?
Потому что в консоль вываливается cors
Sergei
Потому что в консоль вываливается cors
Разверните ответ сфейлившегося реквеста
Константин
https://www.google.com/amp/s/blog.liplex.de/symfony-cors-listener/amp/
Ты серьезно? Предлагаешь листенер написать?
Константин
Разверните ответ сфейлившегося реквеста
Что значит развернуть ответ? Нет ответа, видно же по скрину что failed
Константин
Причем с локалки на прод, все проходит, с прода на прод тоже причем разные сервак, а вот с локалки на локалку, нет
ILΨλ
чтоб браузер рубли запросы из-за корса вообще ничего делать не надо оно по умолчанию так работает, если тебе надо чтоб запросы проходили тебе надо это настроить, путей много (https://enable-cors.org/) но самый простой из них как и посовтовали выше https://github.com/nelmio/NelmioCorsBundle
ILΨλ
ну можно еще header("Access-Control-Allow-Origin: *"); куда-нибудь засунуть
ILΨλ
а еще важно не послать 2 одинаковых заголовка - браузеры тоже не примут
artem
Тебе ид нужно туда передать а это чойз
Create?) Ну разберусь) никогда с хтмл формами не работал
artem
Прогреть кэш перед деплоем это не дичь, это правильно
Та же самая доктрина кэш только один раз собирает
artem
Тупо интерес. Доки хоть кто-то обновляет? Быстренько накатал на пагинаторе. request->query->getInt ('page', 1) Офигел когда получил 0
artem
Я понимаю почему, не понимаю Нахера это в доках
artem
?page=foo
Aleksandr
а есть химики?
Aleksandr
желательно из Риги!
Юра
Доки у симфы как раз норм
artem
Там есть переключатель версий в доке. Может старая версия?
Та нет. 4.4. сначала поругалась на типизацию свойств, потом левые ошибки полезли. Не было времени разбираться, это на онлайн занятии было
Константин
Привет всем. Подскажите как вернуть поле у сущьности, если оно в join равно null?
/*
можно конкретней?
Константин
можно конкретней?
есть поля которые связанные с другими сущьностями, они вот в таком запросе не выводятся
/*
дебаг смотрел?
Константин
дебаг смотрел?
Как это сделать?
Константин
дебаг смотрел?
Если я вот так делаю, то все выводится, только выводятся поля у которых значение не NULL
/*
ну так в запросе sql задай условие вывести и то что вывел сейчас и добавь условие где они NULL
Константин
ну так в запросе sql задай условие вывести и то что вывел сейчас и добавь условие где они NULL
Мне кажется что сам запрос у меня кривой. Подскажи как вывести все поля из одной сущьности + вместо связанной сущности вывести какое то поле?
/*
select * frow l;
/*
таблица видь l називается?
Константин
select * frow l;
Ну так они null не выводит и как подставить связные поля
/*
https://www.flenov.info/books/read/transact-sql/22
/*
http://sql-language.ru/rabota-s-null-znacheniyami.html
Dmitry
Хотя удобно было бы типо cache:clear --warmup
вообще-то оно так и работает cache:clear command will clear and warm the cache
Константин
https://www.flenov.info/books/read/transact-sql/22
короче как там описано не помогает
Юра
WHERE l.user IS NULL
Константин
WHERE l.user IS NULL
сделал вот так, выводит только те записи где join проходит, а где null не выводит
Юра
убери INNER
Юра
просто JOIN
Константин
убери INNER
убрал, результат тот же
Юра
напшии словами что надо вывести
Юра
где именно нул тебе нужен?
Юра
или может тебе надо добавить OR
Юра
where l.user = ... OR l.user IS NULL
Константин
где именно нул тебе нужен?
нужно вывести все сущьности из l, у которых l.user = {$this->getUser()->getId()}, даже если o.brand = NULL
Юра
напиши дамп $query->getSql()
Юра
простой джоин джоинит нул если нет такой связи проверено тыщу раз