a9f02550f0
Removed auto_incrementing id and set a primary key of the [role_id, entity_type, entity_id, action] instead since this table could recieve a lot of activity, especially when permission regeneration was automated, leading to very high auto_increment counts which could max out the integer limit. Also updated some RolesTest comment endpoints to align with recent route changes. Should fix #2091
29 lines
653 B
PHP
29 lines
653 B
PHP
<?php namespace BookStack\Auth\Permissions;
|
|
|
|
use BookStack\Auth\Role;
|
|
use BookStack\Entities\Entity;
|
|
use BookStack\Model;
|
|
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
|
use Illuminate\Database\Eloquent\Relations\MorphOne;
|
|
|
|
class JointPermission extends Model
|
|
{
|
|
protected $primaryKey = null;
|
|
public $timestamps = false;
|
|
|
|
/**
|
|
* Get the role that this points to.
|
|
*/
|
|
public function role(): BelongsTo
|
|
{
|
|
return $this->belongsTo(Role::class);
|
|
}
|
|
|
|
/**
|
|
* Get the entity this points to.
|
|
*/
|
|
public function entity(): MorphOne
|
|
{
|
|
return $this->morphOne(Entity::class, 'entity');
|
|
}
|
|
}
|