một câu hỏi khác. Tôi có một thực thể BaseLog trừu tượng giữ liên kết với người dùng của tôi. Ngoài ra tôi có 2 Thực thể (FooLog & BarLog) mở rộng BaseLog. Ngoài ra, tôi có thực thể người dùng của mình, giả sử để giữ hai liên kết với Nhật ký. Một cho FooLog và một cho BarLog. Đây là vấn đề của tôi. Tôi nhận được thông báo lỗi vì tôi không biết cách ghi đè trường inversedBy của BaseLog trong việc mở rộng Thực thể. Liệu bạn có thể giúp mình không.ánh xạ doctrine2 ghi đè trường inversed đã thừa kế được thừa kế từ MappedSuperclass
Bởi vì tôi nghĩ rằng lời giải thích của tôi không thực sự tốt, ở đây là Thiết lập các thực thể của tôi.
BaseLog
/** @ORM\MappedSuperclass */
abstract class BaseLog {
/**
* @ORM\ManyToOne(targetEntity="User", inversedBy="logs")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="user_id", referencedColumnName="id", nullable=true, onDelete="SET NULL")
* })
*/
private $user;
}
FooLog
/** @ORM\Entity */
class FooLog extends BaseLog {
// Some additional fields
}
BarLog
/** @ORM\Entity */
class BarLog extends BaseLog {
// Some additional fields
}
tài
/** @ORM\Entity */
class User {
/**
* @ORM\OneToMany(targetEntity="FooLog", mappedBy="user", cascade={"persist"})
*/
private $fooLogs;
/**
* @ORM\OneToMany(targetEntity="BarLog", mappedBy="user", cascade={"persist"})
*/
private $barLogs;
}
Làm thế nào để tôi phải ghi đè lên BaseLog 's inversedBy trong FooLog & BarLog.
tôi nhận được nhiều Mapping lỗi trên thiết lập này: BaseLog
- BaseLog: Hiệp hội BaseLog # người dùng đề cập đến nghịch đảo lĩnh vực bên tài # bản ghi mà không tồn tại.
- FooLog: Liên kết Người dùng FooLog # đề cập đến trường bên trái In nhật ký người dùng không tồn tại.
- BarLog: Người dùng BarLog # liên kết đề cập đến trường bên trái In nhật ký người dùng không tồn tại.
- Người dùng: Ánh xạ Người dùng # fooLogs và người dùng FooLog # không phù hợp với nhau.
- Người dùng: Ánh xạ Người dùng # barLogs và Người dùng BarLog # không phù hợp với nhau.
Vui lòng giúp tôi sắp xếp ánh xạ của mình.
Bạn đã bao giờ giải quyết vấn đề này chưa? Tôi đang đối mặt với một tình huống tương tự. – hafichuk
có thể trùng lặp của [Bản đồ inversedBy ghi đè trong kế thừa Doctrine 2] (http://stackoverflow.com/questions/22745653/overriding-inversedby-mapping-in-doctrine-2-inheritance) – PowerKiKi
@hafichuk, có một câu hỏi trùng lặp với một câu trả lời tuyệt vời trên đó: http://stackoverflow.com/a/22820964/37706 – PowerKiKi