Konstantin
я вообще ничего не понял, сорян, умываю руки
Юра
Смотри как реализован метод forward у контроллера
crang
Посмотрю, спасибо
Юра
Ну вообще как бы обычно пишут rest api
Юра
Дергать свои же контроллеры в своем же коде скорее всего что-то не то
Alexander
Может речь о задачах в кроне.. Зачем там урлы:
crang
в стороннем коде, для rest api нужно хостить приложение, хотя бы локально, но сервер не предусмотрен
Konstantin
иногда кажется, что сюда нейросети какие-то проникают
Alexander
а в чем проблема с сервером... хоть тот же "встроенный"?
Konstantin
и вроде генерят фразы из знакомых слов, но начисто лишенных смысла
Alexander
Клиенты обращаются по http?
Alexander
Или просто "командами"?
Alexander
Протокол общения то какой?
crang
Пока никак, протокол - пхп файл, внутри класс с набором методов из приложения symfony
Alexander
делайте консольные команды... раз хотите рабоать через cli
Alexander
А если все же это монолитный проект и "чужой код" лишь условность... тогда вообще не понятно в чем вопрос... Почитайте про "гексокгональную" архитектуту, может это то, что вы хотите
crang
Ну с рест api и консольными командами вроде понятно, я хочу чтоб была возможность из клиентского кода вызвать что-то вроде $symfonyApp->doSomething($data);
Alexander
Это как то не слишком гуд..
crang
Юра
Юра
Что тогда?
Юра
Получается какой-то чисто заточенный на пхп клиент
Юра
Непонятно вообще что такое клиентский код
Юра
Это какой-то плагин?
Сергей
че то похожее на soap wsdl )) как будто. но это один хер на http
Юра
Если клиент это плагин который запускается в твоем приложении то можно да написать сервис, который принимает httl kernel и делает запрос на твой же контроллер
Юра
Но
Юра
Правильнее наверное было бы сразу написать сервис, и своим же контроллером как и плагину дергать этот сервис
Юра
Ну это если сначала делать
Павел
Приветствую. Подскажите плиз с вопросиками:
1) Как работает ResetInterface? Как я понял, метод reset должен вызываться у метода после запроса, но по факту я этог не вижу. Или это только для роадраннера и подобного?
2) Есть statefull сервис, я хотел бы сбрасывать состояние в мессенджере между запросами. Думал решу через resetInterface - но это не работает. Мидлвар делать под сервис? Другого варианта нет?
Сергей
1 помоему вызывается после перезагрузки кернела
2 тут только мидлвар
Сергей
1. Надо глянуть, но мо моему в РР делает ребут кернела для этого как раз
Alexander
Пытаюсь выполнить команду bin/console d:m:diff и "ничего не происходит"..... Т.е. команда типа выполняется... долго... и не завершается. .. у меня всего 5 сущностей. все потри поля и одна на 10 полей...... Как то можно понять что происходит?
Alexander
Запускаю bin/console doctrine:schema:validate - Раздел mapping - ОК, раздел Database - не звершается (только заголовок вывел)
Alexander
Alexey
Народ, а чуть офтопа, кто в phpstan шарит? Как пофиксить вот такое:
https://phpstan.org/r/87b25cb2-7396-4984-8061-b883a7c0b1c6
Alexander
все локально
Konstantin
и тем не менее
Alexander
из шторма вообще спокойно конекчусь и делаю что хочу
Alexander
кстати, бБД при помошщи консоли удалил и создал вновь
Konstantin
попробуйте, во-первых, добавить -vvv к аргументам, во-вторых, подождать там 5 минут, какой-нибудь эксепшн да выпадет
Alexander
ок. пасибо
Konstantin
вообще интересно. а ядро цпу при этом в 100%?
Konstantin
то есть может какой-то бесконечный цикл, если правда не сетевые проблемы
Dmitry
Alexander
Dmitry
Konstantin
Alexander
чудесато... ладно попробую разобраться....
Konstantin
попробуйте что выше советовал, оно там скажет рано или поздно что не так)
Alexander
да. я запустил.... пока пытаюсь на чистом скелетоне поиграться
Dmitriy
Alexander
бред какой то запустил "bin/console doctrine:schema:create -vvv" - все ок.... Пытаюсь diff сразу же - висит....
Alexey
Konstantin
тогда в интерфейсе должен быть \Traversable
Dmitry
Alexey
Ладно, вопрос не про это...
Alexey
в Creator добавить дженерик
Да вот он там есть, но как обойти ошибку пока не очень доходит до меня https://github.com/doctrine/persistence/blob/3.0.x/src/Persistence/ObjectRepository.php#L12
Dmitry
Alexey
Alexey
Вот он пример с дженериками есть в доке, но там реализация интерфейса. Но HelloWorld не реализует интерфейс ObjectCreator'а
/**
* @template T of Message
*/
interface Consumer
{
/**
* @param T $message
*/
function consume(Message $message);
}
/**
* @implements Consumer<SendMailMessage>
*/
class SendMailMessageConsumer implements Consumer
{
function consume(Message $message) { ... }
}
Alexey
Гасить игнором только похоже такие случаи, все примеры с наследованием
Юра
В пхп и тут намудрили
Пилот
ребе, а такую штуку кто то юзал же?
https://ocramius.github.io/blog/doctrine-orm-optimization-hydration
есть некоторая проблемка с этим, хотел кое шо спросить
Павел
Пилот
Пилот
вот описал проблему) буду благодарен если глянешь)
Павел
вот описал проблему) буду благодарен если глянешь)
Если я правильно понял, то при запросе юзера с participation (с участием add(participation) ), если participation пустые и к ним идут потом обращения - то идет запрос в БД ? Выглядит как баг, если это так.
Может быть у вас просто юзер уже в UoW из-за первого запроса и поэтому он заного не гидрируется и его коллекции?
Павел
Я просто как то делал, что ограничивал содержимое one-to-many в join, т.е. не все элементы коллекции возвращал в сущность. При повторном запорсе этой сущности, там были такие же ограничения, что были в предыдущем запросе, хотя в новом запросе их не было. Так как сущности с коллекциями уже были в UoW
Павел
Для чистоты эксперимента - почистите UoW перед запросом
Павел
Точнее IdentityMap, UoW тут не при чем )
Пилот