mirror of
https://github.com/archtechx/tenancy.git
synced 2025-12-12 21:54:03 +00:00
Fix event listener tests, improve domain logic
This commit is contained in:
parent
0bbc66f451
commit
a602cec940
13 changed files with 148 additions and 14 deletions
|
|
@ -1,7 +1,9 @@
|
|||
<?php
|
||||
|
||||
// todo move namespace one dir above
|
||||
namespace Stancl\Tenancy\Database\Models\Concerns;
|
||||
|
||||
// todo rename
|
||||
trait HasADataColumn
|
||||
{
|
||||
public static function bootHasADataColumn()
|
||||
|
|
|
|||
11
src/Database/Models/Concerns/HasDomains.php
Normal file
11
src/Database/Models/Concerns/HasDomains.php
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
<?php
|
||||
|
||||
namespace Stancl\Tenancy\Database\Models\Concerns;
|
||||
|
||||
trait HasDomains
|
||||
{
|
||||
public function domains()
|
||||
{
|
||||
return $this->hasMany(config('tenancy.domain_model'));
|
||||
}
|
||||
}
|
||||
17
src/Database/Models/Concerns/PrimaryDomain.php
Normal file
17
src/Database/Models/Concerns/PrimaryDomain.php
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
<?php
|
||||
|
||||
namespace Stancl\Tenancy\Database\Models\Concerns;
|
||||
|
||||
/**
|
||||
* @property-read string $primary_domain_hostname
|
||||
*/
|
||||
trait PrimaryDomain
|
||||
{
|
||||
// This string should usually come from a relationship implemented by you.
|
||||
abstract public function getPrimaryDomainHostnameAttribute(): string;
|
||||
|
||||
public function route($route, $parameters = [], $absolute = true)
|
||||
{
|
||||
return tenant_route($this->primary_domain_hostname, $route, $parameters, $absolute);
|
||||
}
|
||||
}
|
||||
11
src/Database/Models/Concerns/TenantConnection.php
Normal file
11
src/Database/Models/Concerns/TenantConnection.php
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
<?php
|
||||
|
||||
namespace Stancl\Tenancy\Database\Models\Concerns;
|
||||
|
||||
trait TenantConnection
|
||||
{
|
||||
public function getConnectionName()
|
||||
{
|
||||
return 'tenant';
|
||||
}
|
||||
}
|
||||
|
|
@ -19,6 +19,9 @@ use Stancl\Tenancy\Exceptions\DomainsOccupiedByOtherTenantException;
|
|||
class Domain extends Model
|
||||
{
|
||||
public $guarded = [];
|
||||
public $casts = [
|
||||
'is_primary' => 'bool',
|
||||
];
|
||||
|
||||
public static function booted()
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue