2

私は持っています: 従業員エンティティ:

    <?php

namespace PersonnelBundle\Entity\Employee;

use;
//


//
class Employee extends BaseEntity
{

    //Some fields

     /**
     * @ORM\OneToMany(targetEntity="EmployeeMedicalService", mappedBy="employee")
     */
    private $employeeMedicalServices;

    // getters and setters
}

EmployeeMedicalServices エンティティ:

<?php

namespace PersonnelBundle\Entity\Employee;

use
//

//
class EmployeeMedicalService extends BaseEntity

// some fields

/**
     * @ORM\ManyToOne(targetEntity="PersonnelBundle\Entity\Employee\Employee" ,inversedBy="employeeMedicalServices")
     * @ORM\JoinColumn(name="employee_id",referencedColumnName="id")
     */
    private $employee;

//getters setters

}

子管理者のsonata管理チュートリアルに従って、この構成でsonata管理バンドルを使用しています

私のadmin.yml:

Services:
    {# some services #}

    sonata.admin.employee:
        class: PersonnelBundle\Admin\Employee\EmployeeAdmin
        tags:
            - { name: sonata.admin, manager_type: orm, label: "personnel.employee.form.title"}
        arguments:
            - ~
            - PersonnelBundle\Entity\Employee\Employee
            - ~
        calls:
            - [ setTranslationDomain, [messages]]        
            - [ addChild, ['@sonata.admin.employee_medical_service']]        

    sonata.admin.employee_medical_service:
        class: PersonnelBundle\Admin\Employee\EmployeeMedicalServiceAdmin
        tags:
            - { name: sonata.admin, manager_type: orm, label: "personnel.employee.medical_service.form.title"}
        arguments:
            - ~
            - PersonnelBundle\Entity\Employee\EmployeeMedicalService
            - ~
        calls:
            - [ setTranslationDomain, [messages]] 

そして、これを子管理者クラス EmployeeMedicalServiceAdmin に追加しました。

 public function getParentAssociationMapping()
{
    return 'employee';
}

しかし、それはうまくいきません。私はここで立ち往生しており、本当にこれが機能する必要があります

4

0 に答える 0