के कारण फिक्स्चर लोड नहीं कर सकता है मेरे पास एक कंपनी इकाई है जहां प्रत्येक कंपनी के पास पदानुक्रमित वृक्ष संरचना में एक और मूल कंपनी है।Symfony2, DoctrineFixturesBundle, विदेशी कुंजी बाधा
सबकुछ एप्लिकेशन में ठीक काम करता है, इसलिए मुझे यकीन है कि मेरी इकाई कक्षाएं सही हैं।
समस्या डेटाबेस में पहले से ही सामग्री तो
doctrine:fixtures:load
कर वहाँ है अगर है, तो यह त्रुटि देता है: जुड़नार काटना है:
[PDOException]
SQLSTATE[23000]: Integrity constraint violation: 1451 Cannot delete or update a parent row: a foreign key constraint fails
इम काफी यकीन है कि समस्या लोड करता है तालिका, लेकिन यह त्रुटि प्राप्त किए बिना यह नहीं कर सकता।
मुझे यकीन नहीं है कि शुद्ध करने से पहले महत्वपूर्ण बाधाओं को अक्षम करने के लिए सिद्धांत में कुछ हैकिंग किए बिना इसे कैसे हल किया जाए। वास्तव में एक दीर्घकालिक समाधान नहीं है।
डेटा संरचना में अन्य संबंध समस्या का कारण नहीं बनते हैं क्योंकि समस्याओं से बचने के लिए सिद्धांत सही क्रम में शुद्ध होना प्रतीत होता है, लेकिन कंपनी तालिका स्वयं संदर्भित होने पर यह खत्म हो जाती है।
मेरी इकाई है।
class Company
{
/**
* @var integer $id
*
* @ORM\Id
* @ORM\Column(name="id", type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @var string $name
* @ORM\Column(type="string", length=100)
*/
protected $name;
/**
* @ORM\ManyToOne(targetEntity="Company", inversedBy="children")
* @ORM\JoinColumn(name="parent_id", referencedColumnName="id")
*/
protected $parent;
/* other properties here..... */
}
का उपयोग कर इम Symfony 2.0.7 और नवीनतम deps, और MySQL 5.5
मेरे पास एक अलग त्रुटि संदेश था: * पहचानकर्ता [...] [...] \ Entity \ [...] * की एक क्वेरी के लिए गायब है। यह जवाब समाधान था, यह अभी भी मान्य है, तीन साल बाद (और सिम्फनी 2.3.25 के साथ)। धन्यवाद! –