簡體   English   中英

如何指定使用XML映射擴展了所學映射的超類中的內容

[英]how to specify what extends what in doctrine mappedsuperclass with xml mapping

我試圖弄清楚超類映射在Doctrine2中是如何工作的,並且有一些示例可以使用,但是我一直在使用xml映射來創建我的實體,然后依次創建數據庫模式。 我發現了一個示例,該示例在'entity'標簽上顯示了'extends'參數,但當前架構似乎不支持該參數。

您如何告訴XML驅動程序哪些類應該擴展映射的超類?

SW

您如何告訴XML驅動程序哪些類應該擴展映射的超類?

您不必:)

您可以簡單地創建一個抽象類(將其命名為My\\First\\BaseClass )並以XML定義一個映射的超類:

<?xml version="1.0" encoding="UTF-8"?>
<doctrine-mapping
    xmlns="http://doctrine-project.org/schemas/orm/doctrine-mapping"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://doctrine-project.org/schemas/orm/doctrine-mapping
        http://doctrine-project.org/schemas/orm/doctrine-mapping.xsd"
>

    <mapped-superclass name="My\First\BaseClass">

        <!-- fields, etc -->

    </mapped-superclass>

</doctrine-mapping>

接下來有一個Entity類擴展此Mapped Superclass。 您甚至可以擁有一個實體類來擴展映射的超類,而后者又擴展了另一個映射的超類。

關鍵是:Doctrine足夠聰明,可以遍歷所有XML映射文件,以便基於類繼承確定完整的映射元數據集。 您無需在XML中指定圖形。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM