Ilya 🃏
$response->headers->set('X-Frame-Options', 'SAMEORIGIN'); $response->headers->set('X-Frame-Options-1', 'SAMEORIGIN'); $response->headers->set('jadgbkasdg', 'SAMEORIGIN');
Ilya 🃏
Причём response создаётся на месте, по идее ничто не может повлиять на него
Ilya 🃏
Ilya 🃏
Причём если вывести содержимое ->headers запроса, то там всё ок
Ilya 🃏
Проблема не в симфони, в браузере, т.к. снифферы видят все заголовки. Всем спс
Александр
Rubber duck development, не так то и плохо)
Andrei
Коллеги, добрый день. Есть джедаи codeception? Такая проблема с api-тестом: Код метода выполняется с одним соединением к бд и в своей транзакции, а актор теста со своим соединением в транзакции, в результате актор не видит что делает в базе код. Та же фигня с фикстурами. Если отключить транзакции в конфиге, то соотвественно мусор в базе остается. Как бы это все сконфигурить (в yii2 получалось и работало), а в симфе, ума не приложу. Не руками же подчищать потом. Или тут вообще другой подход нужен?
Dmitry
Это может быть полезно и если в проекте вдруг появятся очереди.
Andrei
Можно и без транзакции. Потом мусор в базе сбрасывать девелоперскими фикстурами.
Ну да, транзакции мне не нравятся, особенно если учесть что тестируемый метод сам может юзать транзакции. И я как раз сторонник грузить свои фикстуры к каждому тесту. Yii2 умел их сам загружать и выгружать при каждом тесте. А здесь уже обгуглился, но не могу толком ничего найти. в основном подход - загрузите дамп или все фикстуры однократно и работайте потом с этим. Если есть какой-то пример, поделитесь пожалуйста? или хотя бы кодовое слово - куда копать
Andrei
Для встроенных PHPUnit тестов есть https://github.com/liip/LiipTestFixturesBundle с его FixturesTrait. А для Codeception надо мудрить.
По-моему эта штука за собой тоже чистить не умеет. По крайней мере фикстуры в интерфейсе имеют load но не имеют unload(
Andrei
А чистить за собой им и не нужно
она не станет добавлять данные если уже добавила?
Dmitry
она не станет добавлять данные если уже добавила?
Загрузчик фикстур полностью очищают БД перед загрузкой фикстур
Andrei
Загрузчик фикстур полностью очищают БД перед загрузкой фикстур
а ну да, как вариант. Спасибо за подсказку, LiipTestFixturesBundle мне не подойдет, т.к. собственно от доктрины мне пришлось отказаться в силу некоторой специфики. Но мысль уловил. Все гениальное - просто)
Dmitry
В общем, есть смысл иметь фикстуры для тестов и отдельные фикстуры с демо-данными для разработки. И после запуска тестов можно отдельной командой вгружать снова девелоперские.
Dmitriy
всем вечера
Dmitriy
парни кто то прикручивал слайдер к easy admin
Ivan
Всем привет! Подскажите пожалуйста по автоматическому входу пользователя сразу после регистрации. Последняя версия Symfony. Делаю так, как указано в некоторых примерах в интернете: GuardAuthenticatorHandler $guardHandler, LoginFormAuthenticator $formAuthenticator И вызов: $guardHandler->authenticateUserAndHandleSuccess( $user, $request, $formAuthenticator, 'main' ); IDE и сам код ругается на то, что $formAuthenticator не наследует интерфейс \Symfony\Component\Security\Guard\AuthenticatorInterface Что тогда нужно туда передавать?
std::mechanicus
Хм. А что посоветуете почитать по симфе вкатуну из Лары?
Слава
Maks
А у нас кто нибудь подкаст вебстандарты слушает? Не могу найти в каком выпуске анонсировали тулзу которая может проверить корректность вложенности html тегов. Как caniuse только что то типа caninest
🦔
tidy не умеет?
Maks
Дедушка?)
Ivan
Подскажите пожалуйста, если необходимо входные данные формы чистить через strip_tags, то через чего это делать? trim вижу, а strip_tags нет, как-то странно...
Юра
Нету наверное потому что твиг по дефолту все экранирует
Ivan
Так в базу данных то html попадает)
Юра
Можешь в сеттере модели написать стрип тагс например
Юра
Или листенер повесить на сабмит формы
Ivan
Могу, но просто обычно порядка 90% форм у меня проходят strip_tags...
Юра
Тогда напиши свой экстенш для форм
Юра
https://symfony.com/doc/current/form/create_form_type_extension.html
Alexey Mishurovskiy
Парни, всем привет. Есть кто занимался сами или знакомые по Prestashop? Люди просят магазин на поддержку взять
netspike
он еще жив ?
jenia
Тут задают вопросы по doctrine ?
Aleksandr
да
jenia
Есть 3 модели. Связь между пользователями и таблицей ролей нормально сделано и работает. Теперь захотел привязать модератор к user_id в таблице Info. и он мне делает внешний ключ на таблице Info. Нужно наоборот. Хочется потом получать инфу через AssignManagerRole->moderator->info class AssignManagerRole { /** * @var User * @ORM\ManyToOne(targetEntity="App\Model\User\Entity\User\User", inversedBy="moderator_role_for") * @ORM\JoinColumn(name="moderator", referencedColumnName="id", nullable=false, onDelete="CASCADE") * @ORM\OneToOne(targetEntity="App\Model\Info\Entity\Info\Info", mappedBy="user_assign_manager") */ public $moderator; ….. class Info { /** * @var User * @ORM\OneToOne(targetEntity="App\Model\User\Entity\User\User", inversedBy="info") * @ORM\JoinColumn(name="user_id", referencedColumnName="id", nullable=false, onDelete="CASCADE") * @ORM\OneToOne(targetEntity="App\Model\AssignManagerRole\Entity\AssignManagerRole\AssignManagerRole", inversedBy="moderator") */ public $user;
Aleksandr
так поменяй местами inversiondBy
Юра
Нифига не понятно
Юра
В симфе есть консольная команда doctrine:schema:validate
Юра
Запусти
Ilya
Привет Всем. Помогите. https://ru.stackoverflow.com/questions/1236899/%d0%9a%d0%b0%d0%ba-%d0%bf%d1%80%d0%b0%d0%b2%d0%b8%d0%bb%d1%8c%d0%bd%d0%be-%d0%b4%d0%b0%d0%bd%d0%bd%d1%8b%d0%b5-%d1%80%d0%b0%d1%81%d1%81%d1%82%d0%b0%d0%b2%d0%b8%d1%82%d1%8c-%d0%b2-%d1%82%d0%b0%d0%b1%d0%bb%d0%b8%d1%86%d0%b5
Maks
вложи перебор дней в перебор юзеров
Dmitriy
Всем привет! Можно ли сгенерить код для php-объекта из yaml файла? Я хочу обращаться к значениям yaml файла, точно также как обращаюсь к значениям объекта (с подсказками ide)
Ivan
Всем привет!) если в Listener от entity, в postUpdate взять и сохранить entity, то все уйдёт в рекурсию?
Юра
На гитхабе есть либы генераторы пхп кода
Юра
Хотя проще написать интерфейс или класс, привести массив к stdclass и пхпдоком сказать тип
Юра
Тогда иде будет автокомплитить
Ilya 🃏
Привет, делал кто-нибудь загрузку файлов частями? Так называемые chunk или resumable upload. Кто знает, есть какие удобные решения для этого?
Ilya 🃏
Везде пишут и рекомендуют tus, но я так понял он просто внедряется в контроллер или запускается как отдельный сервер и принимает файлы, т.е. полностью заменяя всю функциональность контроллера. Я думал о такой штуке, которая бы в начале контроллера проверяла файл, чтобы когда пришел запрос с последней частью файла уже в нём отрабатывалась остальная часть контроллера, вроде добавления в базу\выгрузки куда-либо и т.д.
Dmitriy
Тогда иде будет автокомплитить
понял, копать в сторону stdclass, спасибо большое!
Dmitriy
На гитхабе есть либы генераторы пхп кода
А можете подсказать в как такие либы называются, типо php code generator?
Юра
https://github.com/nette/php-generator
Anonymous
Привет всем!!
Anonymous
Не получается создать список списков. Я так понимаю это делается через массивы? Вот например если основные данные в каталоге - это мастера и их товары. Количество мастеров и товаров не ограничено может быть, но вы точно знаете, что каждый товар изготавливает только один мастер. Как создать единственный массив $data, и придумать его структуру таким образом, чтобы можно было удобно хранить информацию по мастерам и их товарам? Для товара нужно хранить следующую информацию: Наименование товара, Цена, Мастер О мастере нужно хранить следующую информацию о нем: Никнейм, Город, Доставка (Да/Нет) Как это сделать, если учесть, что набор полей в будущем может расширяться.
Anonymous
Как сделать такой список используя всего один массив??
Anonymous
Я новичек, мне очень нужна ваша помощь, помогите ребят.
Сергей
Речь о структуре массива или о том как в симфе связи расставить?
Юра
Храни массив товаров с полем автор, в котором массив с именем и т.д.
Юра
В чем проблема-то?
Юра
А пхп все есть массив
Anonymous
<?php $data["Товар"] = array("Наименования товара"=>"Бетон", "Цена"=>"100", "Мастер"=>"Nick"); $data["Товар"] = array("Наименования товара"=>"Герб", "Цена"=>"150", "Мастер"=>"Nick"); $data["Товар"] = array("Наименования товара"=>"Квадрат", "Цена"=>"799", "Мастер"=>"Black"); echo $data["Товар"]; ?>
Anonymous
но он перезаписывается как я понял
Alexander
Вот так попробуй $data[] = ...
Anonymous
И он не будет перезаписываться?
Roman
конечно перезаписывается. Вам б сначала прочитать про массивы. Александр выше подсказал верный путь. $data["Товар"][] = ["key" => "value"]; будет создавать новую запись в массиве $data["Товар"].
Юра
Не используй слово array
Юра
Выкинь книгу по пхп.2000 года
Roman
))))
Anonymous
$data["Товар"][] = ["Наименования товара"=>"Бетон", "Цена"=>"100", "Мастер"=>"Nick"]; $data["Товар"][] = ["Наименования товара"=>"Герб", "Цена"=>"150", "Мастер"=>"Nick"];
Anonymous
Так не будет перезаписываться?
Alexander
проверь)