Symfony 4 Как управлять ролями?

Я использую Planethoster для размещения своего сайта, но они используют версию Mariadb, которая не поддерживает тип данных JSON. Так что у меня проблема, я не могу использовать JSON или Array для своих ролей в базе данных.

Я хотел бы знать, могу ли я создать ролевую сущность и установить связь между ролями и пользователями? У меня будет много проблем с другими пакетами? И если это возможно, что я должен изменить в моем security.yml?

Или, может быть, есть лучшее решение сохранить JSON в старых версиях MariaDB?

Спасибо

1 ответ

Doctrine не может правильно определить версию вашей базы данных. Для более старых версий MariaDB Doctrine следует автоматически конвертировать JSON в LONGTEXT. Проверить эту ветку MySQL / MariaDB не принимает формат JSON? Не могу создать базу данных

Как упомянуто @GodfreyLaswai

Сначала проверьте свою версию mariadb. Версия 10.1 не поддерживает тип данных JSON, а поддержка версии 10.2 является неполной.

Обходной путь к версии в файле doctrine.yaml к

версия_сервера: '5.6'

затем регенерируйте геттеры и сеттеры с

php bin/console make:entity --regenerate

затем сгенерируйте файл миграции с

php bin / console make: миграция

это сгенерирует файл миграции с типом данных LONGTEXT.

Другие вопросы по тегам