2015-05-29 69 views
2

我知道模型不應該是這樣,但我必須這樣做。 我有3個實體與列:學說:與不同列的2個協會作爲編號

  • 類別
    • ID(@id)
    • 的categoryId
    • ...
  • 產品
    • id(@id)
    • 類別ID
    • ...
  • 所有者
    • ID(@id)
    • ...

我做了一個多對多的關聯類別和所有者之間(使用連接表)。我使用兩列id與連接表進行連接。 (這工作)

現在我想做類別和產品之間的OneToMany關係。但鏈接它們的方法是categoryId。

當Category.categoryId不是主鍵時它不起作用: 被引用的列名'categoryId'必須是目標實體類'Catgeory'上的主鍵列。

如果我把Category.categoryId作爲主鍵(所以2主鍵帶ID),我有一個manytomany關係的問題: 多對多表'JOINTABLE'的連接列必須包含源實體'Category'的ALL標識符列,但是'categoryId'缺失。

我該怎麼辦?

註解上分類: 有關產品:

@ORM \一對多(targetEntity = 「產品」,的mappedBy = 「類別」)

對於所有者:

@ORM \多對多(targetEntity = 「所有者」) @ORM \ JoinTable(NAME = 「JOINTABLE」, ... )

PS:我不能編輯表

回答