У меня есть модель пользователя по умолчанию. Теперь у меня есть еще одна таблица для администраторов. Есть ли способ вернуть пользовательские поля (так как администратор расширяет пользователя) из модели администратора? Я нашел этот пример, но его, когда admin_id присутствует в модели пользователя. У меня здесь однозначное отношение.
class Admin extends User
{
protected $table = 'users';
public static function boot()
{
parent::boot();
static::addGlobalScope(function ($query) {
$query->where('is_admin', true);
});
}
}
Это пример, который я нашел. Я не уверен, как я могу вернуть пользовательские поля из моей модели администратора, когда она находится в другой таблице.
Суть в том, что я хочу иметь возможность делать что-то вроде этого (вызывать методы у пользователей):
Admin::first()->posts()
Где метод posts находится не в классе Admin, а в классе пользователя.
Edit:
Чтобы объяснить это лучше. У меня есть две таблицы: пользователи и администраторы. Они связаны в отношениях один к одному, поэтому я могу сделать что-то вроде этого:
$admin = Admin::first();
$posts = $admin->user()->posts();
но поскольку у администратора должны быть все поля из таблицы пользователей и еще одно поле из таблицы администраторов, я ищу способ сделать это:
$admin = Admin::first();
$posts = $admin->posts();
Я не хочу добавлять администратора или что-то в таблицу пользователей, я все еще хочу использовать таблицу администраторов, так как позже мне понадобятся дополнительные поля.