से एक और प्रश्न। मेरे पास एक सार बेसलॉग इकाई है जो मेरे उपयोगकर्ता को एसोसिएशन रखती है। इसके अतिरिक्त मेरे पास 2 इकाइयां हैं (FooLog & बारलॉग) जो बेसलॉग का विस्तार करती है। इसके अतिरिक्त मेरे पास मेरी उपयोगकर्ता इकाई है जो कि दो संगठनों को लॉग में रखने का अनुमान है। फूलॉग के लिए एक और बारलॉग के लिए एक। यहाँ मेरा मुद्दा है। मुझे त्रुटि संदेश मिलते हैं क्योंकि मुझे नहीं पता कि बेसलॉग की उलटाई कैसे इकाई को विस्तारित करने में फ़ील्ड को ओवरराइट करें। कृपया आप मेरी मदद कर सकते हैं।डॉक्ट्राइन 2 मैपिंग विरासत में उल्लिखित ओवरराइट मैप्डसुपरक्लास
क्योंकि मुझे लगता है कि मेरी व्याख्या वास्तव में अच्छी नहीं है, यहां मेरी संस्थाओं की स्थापना है।
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
}
उपयोगकर्ता
/** @ORM\Entity */
class User {
/**
* @ORM\OneToMany(targetEntity="FooLog", mappedBy="user", cascade={"persist"})
*/
private $fooLogs;
/**
* @ORM\OneToMany(targetEntity="BarLog", mappedBy="user", cascade={"persist"})
*/
private $barLogs;
}
मैं कैसे FooLog & BarLog में BaseLog के inversedBy ओवरराइट करना है। BaseLog
- BaseLog:
मैं इस पर कई मैपिंग त्रुटि को सेट करने में संघ BaseLog # उपयोगकर्ता उलटा पक्ष क्षेत्र उपयोगकर्ता # लॉग जो मौजूद नहीं है को दर्शाता है।
- FooLog: एसोसिएशन FooLog # उपयोगकर्ता उलटा साइड फ़ील्ड उपयोगकर्ता # लॉग का संदर्भ देता है जो मौजूद नहीं है।
- बारलॉग: एसोसिएशन बारलॉग # उपयोगकर्ता उलटा साइड फ़ील्ड उपयोगकर्ता # लॉग का संदर्भ देता है जो मौजूद नहीं है।
- उपयोगकर्ता: मैपिंग उपयोगकर्ता # fooLogs और FooLog # उपयोगकर्ता एक-दूसरे के साथ असंगत हैं।
- उपयोगकर्ता: मैपिंग उपयोगकर्ता # बारलॉग और बारलॉग # उपयोगकर्ता एक-दूसरे के साथ असंगत हैं।
कृपया मेरी मैपिंग सॉर्ट करने में मेरी सहायता करें।
क्या आपने कभी इसे हल किया है? मुझे एक समान स्थिति का सामना करना पड़ रहा है। – hafichuk
संभावित डुप्लिकेट [ओवरराइडिंग ओवरवर्डिंग मैक्प्रिन 2 विरासत में मैपिंग] (http://stackoverflow.com/questions/22745653/overriding-inversedby-mapping-in-doctrine-2-heheritance) – PowerKiKi
@ हाफिचुक, एक डुप्लिकेट प्रश्न है वहां एक उत्कृष्ट उत्तर: http://stackoverflow.com/a/22820964/37706 – PowerKiKi