Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Aula 2 - Atividade 3 - Problema: A "Temporada 0"

Olá pessoal,

Quando adiciono uma quantidade de temporadas ele considera o número 0 como a primeira temporada, fazendo que uma serie com 1 temporada tenha duas temporadas a Temporada 0 e a Temporada 1, para evitar aparecer no front fiz a seguinte correção (vulgo gambiarra).

<ul class="list-group col-sm-12">
        @foreach($temporadas as $temporada)
            @if($temporada->numero != 0)
                <li class="list-group-item">Temporada {{ $temporada->numero }}</li>
            @endif
        @endforeach
    </ul>

Porém sei que não é a melhor solução, como poderia evitar que o 0 fosse inserido?

Abraços

3 respostas
solução!

Fala, Ítalo.

O código que eu implementei não cria a temporada 0 não:

private function criarTemporadas(int $qtdTemporadas, Serie $serie, int $episodiosPorTemporada): void
{
    for ($i = 1; $i <= $qtdTemporadas; $i++) {
        /** @var Temporada $temporada */
        $temporada = $serie->temporadas()->create(['numero' => $i]);

        $this->criarEpisodios($episodiosPorTemporada, $temporada);
    }
}

Foca no $i = 1.

Era isso mesmo Vinicius!

Mas precisa de uma pequena correção na transcrição, que apesar na video-aula você fazer desse modo, na transcrição está assim:

private function criaTemporadas(int $qtdTemporadas, int $epPorTemporada, Serie $serie)
    {
        for ($i = 0; $i <= $qtdTemporadas; $i++) {
            $temporada = $serie->temporadas()->create(['numero' => $i]);
            $this->criaEpisodios($epPorTemporada, $temporada);
        }
    }

Abraços, muito obrigado pela resposta e parabéns pelo curso!

Opa. Valeu pelo aviso, Ítalo. Você pode, nessa aula, clicar no botão no canto superior direito e fazer a sugestão de melhoria. Aí você ganha alguns pontos na plataforma.

:-D