jqh 4 years ago
parent
commit
201c120245

+ 7 - 2
src/Models/Administrator.php

@@ -32,14 +32,19 @@ class Administrator extends Model implements AuthenticatableContract
      * @param array $attributes
      */
     public function __construct(array $attributes = [])
+    {
+        $this->init();
+
+        parent::__construct($attributes);
+    }
+
+    protected function init()
     {
         $connection = config('admin.database.connection') ?: config('database.default');
 
         $this->setConnection($connection);
 
         $this->setTable(config('admin.database.users_table'));
-
-        parent::__construct($attributes);
     }
 
     /**

+ 10 - 2
src/Models/Extension.php

@@ -12,14 +12,22 @@ class Extension extends Model
         'options' => 'json',
     ];
 
+    /**
+     * {@inheritDoc}
+     */
     public function __construct(array $attributes = [])
+    {
+        $this->init();
+
+        parent::__construct($attributes);
+    }
+
+    protected function init()
     {
         $connection = config('admin.database.connection') ?: config('database.default');
 
         $this->setConnection($connection);
 
         $this->setTable(config('admin.database.extensions_table') ?: 'admin_extensions');
-
-        parent::__construct($attributes);
     }
 }

+ 10 - 2
src/Models/ExtensionHistory.php

@@ -8,14 +8,22 @@ class ExtensionHistory extends Model
 {
     protected $fillable = ['name', 'type', 'version', 'detail'];
 
+    /**
+     * {@inheritDoc}
+     */
     public function __construct(array $attributes = [])
+    {
+        $this->init();
+
+        parent::__construct($attributes);
+    }
+
+    protected function init()
     {
         $connection = config('admin.database.connection') ?: config('database.default');
 
         $this->setConnection($connection);
 
         $this->setTable(config('admin.database.extension_histories_table') ?: 'admin_extension_histories');
-
-        parent::__construct($attributes);
     }
 }

+ 7 - 2
src/Models/Menu.php

@@ -44,14 +44,19 @@ class Menu extends Model implements Sortable
      * @param array $attributes
      */
     public function __construct(array $attributes = [])
+    {
+        parent::__construct($attributes);
+
+        $this->init();
+    }
+
+    protected function init()
     {
         $connection = config('admin.database.connection') ?: config('database.default');
 
         $this->setConnection($connection);
 
         $this->setTable(config('admin.database.menu_table'));
-
-        parent::__construct($attributes);
     }
 
     /**

+ 8 - 5
src/Models/Permission.php

@@ -33,19 +33,22 @@ class Permission extends Model implements Sortable
     protected $titleColumn = 'name';
 
     /**
-     * Create a new Eloquent model instance.
-     *
-     * @param array $attributes
+     * {@inheritDoc}
      */
     public function __construct(array $attributes = [])
+    {
+        $this->init();
+
+        parent::__construct($attributes);
+    }
+
+    protected function init()
     {
         $connection = config('admin.database.connection') ?: config('database.default');
 
         $this->setConnection($connection);
 
         $this->setTable(config('admin.database.permissions_table'));
-
-        parent::__construct($attributes);
     }
 
     /**

+ 8 - 5
src/Models/Role.php

@@ -18,19 +18,22 @@ class Role extends Model
     protected $fillable = ['name', 'slug'];
 
     /**
-     * Create a new Eloquent model instance.
-     *
-     * @param array $attributes
+     * {@inheritDoc}
      */
     public function __construct(array $attributes = [])
+    {
+        $this->init();
+
+        parent::__construct($attributes);
+    }
+
+    protected function init()
     {
         $connection = config('admin.database.connection') ?: config('database.default');
 
         $this->setConnection($connection);
 
         $this->setTable(config('admin.database.roles_table'));
-
-        parent::__construct($attributes);
     }
 
     /**

+ 10 - 2
src/Models/Setting.php

@@ -10,14 +10,22 @@ class Setting extends Model
     public $incrementing = false;
     protected $fillable = ['slug', 'value'];
 
+    /**
+     * {@inheritDoc}
+     */
     public function __construct(array $attributes = [])
+    {
+        $this->init();
+
+        parent::__construct($attributes);
+    }
+
+    protected function init()
     {
         $connection = config('admin.database.connection') ?: config('database.default');
 
         $this->setConnection($connection);
 
         $this->setTable(config('admin.database.settings_table') ?: 'admin_settings');
-
-        parent::__construct($attributes);
     }
 }