現在、 「Base」と呼ばれる基本クラスを拡張するすべてのモデルがあります
ベースが雄弁に伸びる
問題は、ユーザー認証とグループに Sentry 2 を使用しているため、2 つのモデルUserとGroupがそれぞれの Sentry ベース モデルSentryUserModelとSentryGroupModelを拡張していることです。
次の 2 つのモデルを使用する方法がわかりません:ユーザー、グループがベースモデルを拡張します。
現在、 「Base」と呼ばれる基本クラスを拡張するすべてのモデルがあります
ベースが雄弁に伸びる
問題は、ユーザー認証とグループに Sentry 2 を使用しているため、2 つのモデルUserとGroupがそれぞれの Sentry ベース モデルSentryUserModelとSentryGroupModelを拡張していることです。
次の 2 つのモデルを使用する方法がわかりません:ユーザー、グループがベースモデルを拡張します。
ユーザー モデルとグループ モデルをそれぞれ SentryUserModel と SentryGroupModel を拡張してから、魔法の関数を使用してベース モデルを拡張することができます。
コード:
class User extends SentryUserModel
{
private $base;
function __construct()
{
$this->base = new Base();
}
// fake "extends Base" using magic function
public function __call($method, $args)
{
$this->base->$method($args[0]);
}
}
class Group extends SentryGroupModel
{
private $base;
function __construct()
{
$this->base = new Base();
}
// fake "extends Base" using magic function
public function __call($method, $args)
{
$this->base->$method($args[0]);
}
}