首页 > 解决方案 > 无法使用 Sonata 管理表单添加

问题描述

我正在使用 Symfony 4,我的应用程序中有 3 个实体——用户、部门和公司。一个公司会有很多部门,一个部门会有很多用户。

我已经设置了 Sonata Admin 并且可以编辑用户,但是如果尝试查看添加用户表单,我会收到以下错误:

PropertyAccessor requires a graph of objects or arrays to operate on, but it found type "NULL" while trying to traverse path "department.company" at property "company".

这是我的用户管理员:

class UserAdmin extends AbstractAdmin
{
protected function configureFormFields(FormMapper $formMapper)
{
    $formMapper
        ->add('firstName', TextType::class)
        ->add('lastName', TextType::class)
        ->add('department.company', ModelType::class, [
            'class' => Company::class,
            'property' => 'name',
        ])
        ->add('department', ModelType::class, [
            'class' => Department::class,
            'property' => 'name',
        ])
        ->add('email', TextType::class)
    ;
}

标签: symfonysonata-admin

解决方案


推荐阅读