@@ -4423,21 +4423,33 @@ protected function addCrossFkScheduledForDeletion(&$script, CrossForeignKeys $cr
44234423 foreach ($ crossFKs ->getIncomingForeignKey ()->getColumnObjectsMapping () as $ reference ) {
44244424 $ local = $ reference ['local ' ];
44254425 $ foreign = $ reference ['foreign ' ];
4426+ $ value = $ reference ['value ' ];
44264427
44274428 $ idx = array_search ($ local , $ crossPks , true );
4428- $ script .= "
4429+ if ($ value ) {
4430+ $ script .= "
4431+ \$entryPk[ $ idx] = ' $ value'; " ;
4432+ } else {
4433+ $ script .= "
44294434 \$entryPk[ $ idx] = \$this->get {$ foreign ->getPhpName ()}(); " ;
4435+ }
44304436 }
44314437
44324438 $ combinationIdx = 0 ;
44334439 foreach ($ crossFKs ->getCrossForeignKeys () as $ crossFK ) {
44344440 foreach ($ crossFK ->getColumnObjectsMapping () as $ reference ) {
44354441 $ local = $ reference ['local ' ];
44364442 $ foreign = $ reference ['foreign ' ];
4443+ $ value = $ reference ['value ' ];
44374444
44384445 $ idx = array_search ($ local , $ crossPks , true );
4439- $ script .= "
4440- \$entryPk[ $ idx] = \$combination[ $ combinationIdx]->get {$ foreign ->getPhpName ()}(); " ;
4446+ if ($ value ) {
4447+ $ script .= "
4448+ \$entryPk[ $ idx] = ' $ value'; " ;
4449+ } else {
4450+ $ script .= "
4451+ \$entryPk[ $ idx] = \$combination[ $ combinationIdx]->get {$ foreign ->getPhpName ()}(); " ;
4452+ }
44414453 }
44424454 $ combinationIdx ++;
44434455 }
@@ -4471,20 +4483,32 @@ protected function addCrossFkScheduledForDeletion(&$script, CrossForeignKeys $cr
44714483 foreach ($ crossFKs ->getIncomingForeignKey ()->getColumnObjectsMapping () as $ reference ) {
44724484 $ local = $ reference ['local ' ];
44734485 $ foreign = $ reference ['foreign ' ];
4486+ $ value = $ reference ['value ' ];
44744487
44754488 $ idx = array_search ($ local , $ crossPks , true );
4476- $ script .= "
4477- \$entryPk[ $ idx] = \$this->get {$ foreign ->getPhpName ()}(); " ;
4489+ if ($ value ) {
4490+ $ script .= "
4491+ \$entryPk[ $ idx] = ' $ value'; " ;
4492+ } else {
4493+ $ script .= "
4494+ \$entryPk[ $ idx] = \$this->get {$ foreign ->getPhpName ()}(); " ;
4495+ }
44784496 }
44794497
44804498 $ crossFK = $ crossFKs ->getCrossForeignKeys ()[0 ];
44814499 foreach ($ crossFK ->getColumnObjectsMapping () as $ reference ) {
44824500 $ local = $ reference ['local ' ];
44834501 $ foreign = $ reference ['foreign ' ];
4502+ $ value = $ reference ['value ' ];
44844503
44854504 $ idx = array_search ($ local , $ crossPks , true );
4486- $ script .= "
4505+ if ($ value ) {
4506+ $ script .= "
4507+ \$entryPk[ $ idx] = ' $ value'; " ;
4508+ } else {
4509+ $ script .= "
44874510 \$entryPk[ $ idx] = \$entry->get {$ foreign ->getPhpName ()}(); " ;
4511+ }
44884512 }
44894513
44904514 $ script .= "
0 commit comments