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.