Как включить красноречивые добавленные атрибуты в JsonResource - PullRequest
0 голосов
/ 10 февраля 2019

Я хотел бы включить добавленные атрибуты во время создания моего ответа API в классе ресурсов.

Для этого у меня есть класс модели с именем Article.php

class Article extends Model
{
    protected $table = 'articles';

    protected $fillable = ['id', 'articleNo'];
    protected $appends = ['is_available'];

    public function getIsAvailableAttribute() {
        return true;
    }

ArticleController.php

public function index() {
    $articles = Article::all();
    return ArticleResource::collection($articles);
}

ArticleResource.php

class ArticleResource extends JsonResource
{
    public function toArray($request)
    {
        return [
            'id' => $this->id,
            'articleNumber' => $this->articleNo,
            'isAvailable' => $this->is_available,
        ];
    }
}

Когда я пытаюсь запустить свой код, выдается следующая ошибка:

ErrorException (E_NOTICE) Неопределенное свойство: stdClass :: $ is_available

если я удаляю строку isAvailable из моего ArticleResource, она работает.

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