• Как привести Entity в соответствие с таблицей в в Symfony 6?

    @tukreb
    Доктрина очень капризна, даже порядок объявлений атрибутов в таблице важен (в частности для ManyToMany).
    Я обычно делаю так.
    Автоматически генерируемые имена индексов использую только для отношений ManyToMany (потому что доктрина не поддерживает другие :))
    Всё остальное пишу руками.
    Далее делаю doctrine:mapping:import (эта функция кстати депрекейтет и скоро удалят, если никто не вызовется поддерживать) и сверяю с тем, что написано у меня, т.к Доктрина очень капризна, у вас может быть всё правильно написано, но не в том порядке или не в том месте.
    Я не знаю как там с MySQL, но в PostgreSQL все индексы и комментарии (за исключением внешних ключей) объявляю только через отдельные: $this->addSql();
    Например:
    $this->addSql('COMMENT ON COLUMN table.field IS \'(DC2Type:datetime_immutable)\'');

    Потому что доктрина не всегда видит или не любит, если всё это делать сразу при объявление таблиц. Это конечно звучит как бред, но работая с доктриной и набив шишки некоторые моменты уже обходишь за километр проверенными решениями.
    Ответ написан
    Комментировать
  • Чем проверить hdd на бэды?

    @tukreb
    Старые диски (без AF, обычно до 2012 года выпуска и менее 2 ТБ) - проверять можно MHDD
    Новые диски AF - WHDD, hddscan или Виктория.

    Процедура проверки следующая:
    1. Обязательно делать посекторный ERASE, чтобы перезаписались сектора и обновился SMART.
    2. Далее читаем поверхность на бэды.

    Если не выполните 1 пункт, то не получите точные данные, такие как количество реллокейтет или повреждённые сектора. Причина в том, что диск может считать проблемные сектора, а вот записать нет, именно первый пункт вычисляет такие сектора и заодно помечает их в SMART.
    Так же бывают pending сектора - это временно зависшие, помогает многократное перезапись этого сектора, хотя не гарантировано и диск может пометить его как бэд, тут как повезёт.
    Ответ написан
    Комментировать
  • Существует ли спискок кодов операторов по регионам в Европейских странах?

    @tukreb
    Нет в ЕС такого бреда.
    В ЕС ещё популярны анонимные сим карты (точнее это типичные симки, просто продаются в автоматах или в магазинах), а ещё в ЕС 3-4 года как убрали роуминг, и тарифы равны тарифам той стране в которой выпушена была сим карта, поэтому те кто любят дешёвую связь будут сидеть на всяких болгарских или польский сим картах находясь в любой точки ЕС, что в общем я и делаю :)
    Ответ написан
    1 комментарий
  • Ссылка из массива на внешнюю переменную?

    @tukreb
    У вас при инициализации лишнии переменные.
    Должно быть просто
    $link = [&$one, &$two];

    https://onlinephp.io?s=s7EvyCjg5UpJTc5JLErVKC4pykw...
    Ответ написан
    Комментировать
  • Как вычислить кто через какое устройство следит за тобой через wifi?

    @tukreb
    1. Заходим на свой роутер (обычно адрес gateway), сразу меняем туда пароль.
    2. Отключаем WPS, и меняем пароль на WPA2 как минимум, чтобы был в 16 символов и содержал буквы и цифры (так вас повторно сломают через несколько лет подбором)
    3. Отключаем вебморду для внешней сети только для локалки оставляем.
    4. Заходим на телефон в настройки и блокируем ВСЕМ приложением весь функционал, особенно если он связан с WiFi. Не переживайте WiFi не перестанет работать, а вот собирать данные к каким точкам вы подключаетесь приложения перестанут, а значит не смогут следить и отслеживать ваше движение. Этим занимается по полной программе VK.

    А если вы думаете, что у вас стоит скрытая камера, то купите специальное устройство которое посылает ИК-лучи (популярно в Корее), можете у них заказать, так же современные смартфоны с ToF датчиком, это умеют делать.
    Ответ написан
  • Как себя ведет wordpress на PostgreSQL?

    @tukreb
    PostgreSQL - это enterprise решение. Конечно если сомневаетесь что выбрать, всегда лучше выбирать PostgreSQL, т.к MySQL во всех случаях будет как даунгрейд, просто потому, что MySQL на несколько лет позади в развитие и до сих пор многое не умеет, хотя конечно лучше, чем было на 5 версии.
    Но если у вас есть тот, кто буквально знает ВСЁ об MySQL и сумеет его правильно приготовить, то тогда конечно лучше выбрать его.
    Ответ написан
    Комментировать
  • Получится ли заменить цп на нетбуке?

    @tukreb
    1. Вы задаёте этот вопрос значит вы не разбираетесь и у вас нет денег.
    2. Замена впаяемого ЦПУ - дорогая процедура и это лотерея, а где не лотерея будет дороже, но где лотерея в итоге выйдет ГОРАЗДО дороже.
    3. Нетбук х101 - мусор и вам дороже обойдётся замена ЦПУ, чем покупка нормального быстрого ноутбука.
    Итог - скупой платит дважды, а лох всегда.
    Не будьте ни тем, ни этим, а просто купите нормальный ноутбук.
    Ответ написан
    6 комментариев
  • Как реализовать премодерацию запросов добавления/изменения в БД?

    @tukreb
    Очевидное - самое простое.
    А очевидное решение, создать таблицу черновиков (или как лучше придумаете ей название), куда будут попадать все новые или изменённые записи в ожидание модерации. Как они пройдут модерацию, они добавляются или изменяются существующие записи.
    Можно ещё дальше пойти и развить её так же для истории, то есть все записи в таблице черновик остаются, но привязываются к нужной записи и человек может посмотреть историю всех изменений.
    Ответ написан
    2 комментария
  • Если "украл" рисунок у нейросети, может ли на тебя подать в суд владелец этой нейросети?

    @tukreb
    Пока нет ни какого законодательной базы, но прецеденты есть
    https://habr.com/ru/news/t/708146/

    В общем лучше не афишировать, а ссылаться что вы использовали различные инструменты типо Photoshop. Самое забавно, что ИИ этот тоже photoshop и без нужных знаний нормальной картинки не получите :)
    Ответ написан
    Комментировать
  • Как на symfony добавить возможность аутентификации по JWT токену?

    @tukreb
    В общем есть "официальный"
    https://symfony.com/bundles/LexikJWTAuthentication...

    Использую в одном проекте на симфони 5.4 всё устраивает.

    Сам бандл активно развивается тоже https://github.com/lexik/LexikJWTAuthenticationBundle
    Ответ написан
    Комментировать
  • Какие файлы считаются небезопасными для загрузки на сервер?

    @tukreb
    Все файлы небезопасны. Можно загрузить картинку, в которой будет исполеяемый код.
    Вы должны настроить сервер (nginx/apache) так, чтобы в папке где будут загруженны клиентами файлы, в принципе нельзя было исполнять НИКАКИЕ файлы.
    Ответ написан
    Комментировать
  • Как лучше хранить денежные суммы в Postgres?

    @tukreb
    Вот так не нужно
    https://wiki.postgresql.org/wiki/Don%27t_Do_This#D...

    И всё Postresql умеет в numeric https://www.postgresql.org/docs/current/datatype-n...
    up to 131072 digits before the decimal point; up to 16383 digits after the decimal point
    Ответ написан
    Комментировать
  • Что бы вы хотели знать, когда перешли на линукс или первый раз поставили?

    @tukreb
    Не повторяй мою ошибку трогай только Линукс на Arch, например Manjaro.
    Если бы я начинал не с Debian/Ubuntu (или другого мусора построенного на Debian) я бы не имел такого лютого подгорания от Linux desktop. Всё что основано на Debian просто трешак и работает через пень колоду в GUI, магические баги, не решаемые баги десятилетиями и т.д.
    Да и вообще самое опасное в нем (Debian) - это то, что система сама себя может нахрен удалить при установки какой то программы. https://www.youtube.com/watch?v=0506yDSgU7M&t=600s - установка app удалила всю систему оставив только ядро. Тут красно глазики могут оспорить, он ведь не читал стену текста. Вот только потом это видео разбирали влиятельные Linux люди и они согласились, что это ужасно, и никто не будет читать стену текста перед установкой программы. Да даже сам создатель ядра Линус в далёкие 2013 годах посылал разработчиков Debian за их менеджер зависимостей.

    П.С Debian хорошо в серверном терминал варианте.
    Ответ написан
  • Что не так в коде (можете сделать краткое код ревью)?

    @tukreb
    Вы сами и ответили почему заброкали, но ещё добавлю, что ваш код написан с натяжкой на php 7.0
    Серьёзно? Уже этого достаточно.
    Ну и вообще написан ваш код в стиле 2010 годов, и вообще ни какого форматирования. Вы прямо кричите этим кодом, что вам похер на ревьювера и его глаза, ну вот ревьювер сам вас и послал на 3 буквы.
    Композер, PSR, и строгий стиль php (с типами данных) - это обязаловка. Никто больше не пишет новые проекты через ректальный язык программирование php5 (да и старые тоже).
    Ответ написан
    2 комментария
  • Вопрос по развитию IT?

    @tukreb
    1. Прочитайте любую основу.
    2. Начните кодить, что угодно и как угодно (хотя бы тот же блог или туду лист), тут главное начать и без чужой помощи, сами гуглите сами ищите и гавнокодите.
    3. Когда кое как закончите с 2 пунктом, можете приниматься за умные книжки, типо ООП и т.д
    4. Берёте проект из 2 пункта и переделываете с теми знаниями, что получили из 3 пункта.
    5. Читаете следующую умную книжку
    6. Переделываете проект из 4 пункта со знаниями полученными в 5 пункте.
    И так до бесконечности. Да именно так, в IT нет конечной точки, вы должны всегда обучаться и практиковаться.
    Ответ написан
    9 комментариев
  • Есть ли в php аналог data class kotlin?

    @tukreb
    Можно, в php 8.0 ввели сахар Constructor Property Promotion
    https://wiki.php.net/rfc/constructor_promotion
    https://stitcher.io/blog/constructor-promotion-in-php-8
    Ответ написан
    Комментировать
  • Можно ли совмещать модули ОЗУ от разных производителей?

    @tukreb
    Можно, разрешаю.
    Планка будет работать по самым низким из планок показателей.
    Ответ написан
    3 комментария
  • Какой у вас маршрут для редактирования сущности через апи? И почему?

    @tukreb
    Есть best practices им и следуйте, всё до вас уже придумано.
    https://restfulapi.net/resource-naming/
    В отличие от обычного web где есть только GET and POST запросы. Через API используется ещё PUT, DELETE и т.д, что и заменяют все эти слова create/edit/remove и т.д.
    Ответ написан
    Комментировать
  • Какие проблемы могут возникнуть при генерации id объекта для бд с использованием текущей даты?

    @tukreb
    Не изобретайте велосипед и используйте уже давно придуманное решение - используйте GUID/UUID
    Лучше использовать последнею версию UUIDv7или в простонароден Ulid, которые имеет все плюсы целого числа (всегда будут вставляться друг за другом и не приведут к фрагментации данных. Ваш вариант как раз таки к таким проблемам и приведёт, и это одна из проблем) и гарантирует, что не будет повторов.
    Ответ написан
    Комментировать