File tree Expand file tree Collapse file tree 1 file changed +13
-8
lines changed Expand file tree Collapse file tree 1 file changed +13
-8
lines changed Original file line number Diff line number Diff line change @@ -521,18 +521,23 @@ private function processAllWith (&$data, $shouldReset = true) {
521521 if ($ relationType == 'hasone ' ) {
522522 $ obj = new $ modelName ;
523523 $ table = $ obj ->dbTable ;
524-
524+ $ primaryKey = $ obj ->primaryKey ;
525+
525526 if (!isset ($ data [$ table ])) {
526527 $ data [$ name ] = $ this ->$ name ;
527528 continue ;
528- }
529- if ($ this ->returnType == 'Object ' ) {
530- $ item = new $ modelName ($ data [$ table ]);
531- $ item ->returnType = $ this ->returnType ;
532- $ item ->isNew = false ;
533- $ data [$ name ] = $ item ;
529+ }
530+ if ($ data [$ table ][$ primaryKey ] === null ) {
531+ $ data [$ name ] = null ;
534532 } else {
535- $ data [$ name ] = $ data [$ table ];
533+ if ($ this ->returnType == 'Object ' ) {
534+ $ item = new $ modelName ($ data [$ table ]);
535+ $ item ->returnType = $ this ->returnType ;
536+ $ item ->isNew = false
537+ $ data [$ name ] = $ item ;
538+ } else {
539+ $ data [$ name ] = $ data [$ table ];
540+ }
536541 }
537542 unset ($ data [$ table ]);
538543 }
You can’t perform that action at this time.
0 commit comments