Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
2
respostas

E quando não tiver episódios para uma série?

Boa tarde! Eu alterei o accessor da model Serie para só retornar o link de episódios se for maior que 0 . Fiz da forma que estou mais acostumado

public function getLinksAttribute($link):array
    {
        $episodios = Episodio::query()->where('serie_id',$this->id)->count();
        if($episodios>0){
            $episodiosLink = "/api/series/{$this->id}/episodios";
        }else{
            $episodiosLink ="";
        }
        return [
            "self"=>"/api/series/{$this->id}",
            "episodios"=>$episodiosLink
        ];
    }

Funcionou perfeitamente, só não sei se é a melhor forma .

2 respostas
solução!

Olá, Wilson.

Se não há nenhum episódio para a série, essa informação só deveria ser exibida no link que busca os episódios.

Da forma como você implementou, pra cada episódio, uma query vai ser executada no banco. Esse código é danoso a ponto de derrubar um servidor em casos extremos.

Vinicius, tudo bem. Muito obrigado pela resposta.