Symfony 4 Sonata User Bundle Установка

Я следовал всем инструкциям из руководства по установке, но все еще имею эту ошибку во время установки Sonata User Bundle в приложении Symfony 4:

Column name `id` referenced for relation from Application\Sonata\UserBundle\Entity\User towards Sonata\UserBundle\Entity\BaseGroup does not exist.

Мой конфиг полностью такой же, как в руководстве по установке.

Не нашел каких-либо решений на стеке потока или где-либо еще.

1 ответ

В конце концов я нашел решение, но это заняло некоторое время, поэтому я хочу опубликовать его здесь для всех, кто столкнулся с этой проблемой.

Добавление этого кода в конфигурацию (например, sonata_core.yaml):

sonata_user:
    class:
        user:               Application\Sonata\UserBundle\Entity\User
        group:              Application\Sonata\UserBundle\Entity\Group

и изменение значений user_class а также group_class в конфигурации (например, fos_user.yaml) решает проблему:

fos_user:
    db_driver:      orm
    firewall_name:  main
    user_class:     Application\Sonata\UserBundle\Entity\User
    from_email:
        address:        noreply@example.com
        sender_name:    John Doe

    group:
        group_class:   Application\Sonata\UserBundle\Entity\Group
        group_manager: sonata.user.orm.group_manager

    service:
        user_manager: sonata.user.orm.user_manager

В руководстве по установке ничего об этом нет, я нашел это в главе " Расширенная настройка".

Надеюсь, это кому-нибудь поможет.

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