Пример #1
0
 /**
  * Database checking
  * @return void
  */
 protected function checkDatabase()
 {
     //schema
     $db = Yii::$app->db;
     $filename = dirname(__DIR__) . '/schema/' . $db->driverName . '.sql';
     $sql = explode(';', file_get_contents($filename));
     foreach ($sql as $s) {
         if (trim($s) !== '') {
             $db->createCommand($s)->execute();
         }
     }
     //rbac
     $auth = Yii::$app->getAuthManager();
     if ($auth->getRole('Menu') === null) {
         //menu role
         $menu = $auth->createRole('Menu');
         $auth->add($menu);
     }
     //data
     $root = Menu::find()->roots()->one();
     if ($root === null) {
         $root = new Menu(['name' => 'Root']);
         $root->makeRoot();
     }
 }