Doctrine.Tests.ORM.Tools.Export.User.dcm.xml 2.8KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <doctrine-mapping xmlns="http://doctrine-project.org/schemas/orm/doctrine-mapping"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://doctrine-project.org/schemas/orm/doctrine-mapping
  5. http://www.doctrine-project.org/schemas/orm/doctrine-mapping.xsd">
  6. <entity name="Doctrine\Tests\ORM\Tools\Export\User" table="cms_users">
  7. <lifecycle-callbacks>
  8. <lifecycle-callback type="prePersist" method="doStuffOnPrePersist"/>
  9. <lifecycle-callback type="prePersist" method="doOtherStuffOnPrePersistToo"/>
  10. <lifecycle-callback type="postPersist" method="doStuffOnPostPersist"/>
  11. </lifecycle-callbacks>
  12. <id name="id" type="integer" column="id">
  13. <generator strategy="AUTO"/>
  14. </id>
  15. <field name="name" column="name" type="string" length="50" nullable="true" unique="true" />
  16. <field name="email" column="user_email" type="string" column-definition="CHAR(32) NOT NULL" />
  17. <one-to-one field="address" target-entity="Doctrine\Tests\ORM\Tools\Export\Address" inversed-by="user" orphan-removal="true">
  18. <cascade><cascade-persist /></cascade>
  19. <join-column name="address_id" referenced-column-name="id" on-delete="CASCADE" on-update="CASCADE"/>
  20. </one-to-one>
  21. <many-to-one field="mainGroup" target-entity="Doctrine\Tests\ORM\Tools\Export\Group" />
  22. <one-to-many field="phonenumbers" target-entity="Doctrine\Tests\ORM\Tools\Export\Phonenumber" mapped-by="user" orphan-removal="true">
  23. <cascade>
  24. <cascade-persist/>
  25. <cascade-merge/>
  26. </cascade>
  27. <order-by>
  28. <order-by-field name="number" direction="ASC" />
  29. </order-by>
  30. </one-to-many>
  31. <one-to-many field="interests" target-entity="Doctrine\Tests\ORM\Tools\Export\Interests" mapped-by="user" orphan-removal="true">
  32. <cascade>
  33. <cascade-refresh/>
  34. <cascade-persist/>
  35. <cascade-merge/>
  36. <cascade-detach/>
  37. <cascade-remove/>
  38. </cascade>
  39. </one-to-many>
  40. <many-to-many field="groups" target-entity="Doctrine\Tests\ORM\Tools\Export\Group">
  41. <cascade>
  42. <cascade-all/>
  43. </cascade>
  44. <join-table name="cms_users_groups">
  45. <join-columns>
  46. <join-column name="user_id" referenced-column-name="id" nullable="false" unique="false" />
  47. </join-columns>
  48. <inverse-join-columns>
  49. <join-column name="group_id" referenced-column-name="id" column-definition="INT NULL" />
  50. </inverse-join-columns>
  51. </join-table>
  52. </many-to-many>
  53. </entity>
  54. </doctrine-mapping>