2

我正在使用Doctrine 1.2并寻找在我的schema.yml中的两个表之间创建1:n 关系的正确语法

通常这是通过以下方式完成的:

BookChapter:
  columns:
    ...
  relations:
    Book:
      class: Book
      local: book_id
      foreign: id
      type: one
      onDelete: cascade

但是在我的特殊情况下,有2 个外主键

BookReader

book:
  type: integer(8)
  primary: true
reader: 
  type: integer(8)
  primary: true


BookReaderDetails

book_id: integer(8)
reader_id: integer(8)
...

是否可以用教义模式文件定义这种关系?

4

1 回答 1

3

Doctrine 不能很好地与多个主键配合使用,除非它们被用作多对多参考表(联结表)。

如果你想要一个一对多而不是多对多的关系,你可能最好将一个主键列添加到BookReader. 然后,您可以在书籍和阅读器上放置一个唯一索引。

于 2010-10-16T15:18:54.130 回答