Symfony 4 Как управлять ролями? - PullRequest
0 голосов
/ 02 марта 2019

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

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

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

Спасибо

1 Ответ

0 голосов
/ 02 марта 2019

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

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

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

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

server_version: '5.6'

затем заново сгенерируйте методы получения и установки с помощью

php bin / console make: entity --regenerate

затем создайте файл миграции с помощью

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

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

...