Laravel - получить значение enum в модели eloquent - PullRequest
2 голосов
/ 21 апреля 2020

У меня есть база данных со столбцом под названием «user_types». Этот столбец заполнен 1, 2, 3 или 4 в зависимости от вашего user_type. Я следовал этой статье и успешно создал свои перечисления, и их можно вызывать. Однако я хотел бы, чтобы, когда я вызывал класс User, он автоматически заменял 1 на «Редактор», когда возвращал мне модель. У кого-нибудь есть идея?

1 Ответ

3 голосов
/ 21 апреля 2020

Я бы использовал метод доступа :

public function getTypeAttribute(): string
{
    return [
        1 => 'Editor',
        2 => 'Magician',
        3 => 'Butcherer',
        4 => 'Clown'
    ][$this->user_type];
}

Тогда вы можете легко получить его:

$type = $user->type;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...