1- <?php  namespace  Mitch \LaravelDoctrine \Console ;  
1+ <?php  namespace  Mitch \LaravelDoctrine \Console ;
22
33use  Illuminate \Console \Command ;
44use  Doctrine \ORM \Tools \SchemaTool ;
5- use  Doctrine \ORM \ Mapping \ ClassMetadataFactory ;
5+ use  Doctrine \Common \ Persistence \ ManagerRegistry ;
66use  Symfony \Component \Console \Input \InputOption ;
77
88class  SchemaUpdateCommand extends  Command
@@ -29,18 +29,18 @@ class SchemaUpdateCommand extends Command
2929    private  $ tool
3030
3131    /** 
32-      * The class metadata factory  
33-      * 
34-      * @var \Doctrine\ORM\Tools\SchemaTool  
35-      */ 
36-     private  $ metadata 
32+        * The ManagerRegistry  
33+        * 
34+        * @var \Doctrine\Common\Persistence\ManagerRegistry  
35+        */ 
36+     private  $ registry 
3737
38-     public  function  __construct (SchemaTool $ toolClassMetadataFactory   $ metadata 
38+     public  function  __construct (SchemaTool $ toolManagerRegistry   $ registry 
3939    {
4040        parent ::__construct ();
4141
4242        $ this tool  = $ tool
43-         $ this metadata  = $ metadata 
43+         $ this registry  = $ registry 
4444    }
4545
4646    /** 
@@ -52,18 +52,21 @@ public function fire()
5252    {
5353        $ this info ('Checking if database needs updating.... ' );
5454        $ clean$ this option ('clean ' );
55-         $ sql$ this tool ->getUpdateSchemaSql ($ this metadata ->getAllMetadata (), $ clean
56-         if  (empty ($ sql
57-             $ this info ('No updates found. ' );
58-             return ;
59-         }
60-         if  ($ this option ('sql ' )) {
61-             $ this info ('Outputting update query: ' );
62-             $ this info (implode ('; '  . PHP_EOL , $ sql
63-         } else  {
64-             $ this info ('Updating database schema.... ' );
65-             $ this tool ->updateSchema ($ this metadata ->getAllMetadata ());
66-             $ this info ('Schema has been updated! ' );
55+         foreach  ($ this registry ->getManagerNames () as  $ key$ value
56+             $ manager$ this registry ->getManager ($ key
57+             $ sql$ this tool ->getUpdateSchemaSql ($ managergetMetadataFactory ()->getAllMetadata (), $ clean
58+             if  (empty ($ sql
59+                 $ this info ('No updates found. ' );
60+                 continue ;
61+             }
62+             if  ($ this option ('sql ' )) {
63+                 $ this info ('Outputting update query: ' );
64+                 $ this info (implode ('; '  . PHP_EOL , $ sql
65+             } else  {
66+                 $ this info ('Updating database schema.... ' );
67+                 $ this tool ->updateSchema ($ this metadata ->getAllMetadata ());
68+                 $ this info ('Schema has been updated! ' );
69+             }
6770        }
6871    }
6972
@@ -75,4 +78,3 @@ protected function getOptions()
7578        ];
7679    }
7780}
78- 
0 commit comments