doctrine2(xml):在一对多的双向关系中,不能得到推断方?

时间:2014-12-25 09:57:49

标签: symfony orm doctrine-orm

我有BannerGroup个实体与xml配置

Banner.xml

<mapped-superclass name="Banner" table="luc_banners"
                   repository-class="BannerRepository">
    <id name="id" column="id" type="integer">
        <generator strategy="AUTO" />
    </id>
    <field name="path" column="path" type="string" nullable="true" />
    <field name="link" column="link" type="string" nullable="true" />
    <field name="position" column="position" type="string" nullable="true" />
    <field name="groupId" column="group_id" type="integer" />

    <many-to-one field="group" target-entity="Group" inversed-by="banners">
        <join-column name="group_id" referenced-column-name="id" nullable="false" on-delete="CASCADE" />
    </many-to-one>
</mapped-superclass>

Group.xml

<mapped-superclass name="Group" table="luc_banners_groups" repository-class="GroupRepository">
        <id name="id" column="id" type="integer">
<generator strategy="AUTO" />
        </id>
        <field name="name" column="group_name" type="string" nullable="true" />
        <field name="type" column="group_type" type="string" nullable="true" />
        <field name="status" column="group_status" type="string" nullable="true" />
        <field name="order" column="group_order" type="integer" nullable="true" />
        <one-to-many field="banners" target-entity="Banners" mapped-by="group">
            <cascade>
                <cascade-all />
            </cascade>
        </one-to-many>
    </mapped-superclass>

当尝试获取横幅形式组对象时,我得到空数组,并且Profiler显示此sql SELECT l0_.group_name AS group_name0, l0_.id AS id4 FROM luc_banners_groups l0_ WHERE l0_.group_status = ?并显示此错误的有效实体Banner - The association Banner#group refers to the inverse side field Group#banners which does not exist.

你可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

<field name="groupId" column="group_id" type="integer" />删除Banner.xml,我认为它超越了第二个..