Olá pessoal!!!
Estou recebendo esse erro:
SQLSTATE[23000]: Integrity constraint violation: 19 NOT NULL constraint failed: temporadas.serie_id (SQL: insert into "temporadas" default values)
E em pesquisas notei que esse erro esta relacionado a algum erro no banco e achei também um post de outro aluno do alura com esse mesmo erro, segue o link do post dele:
https://cursos.alura.com.br/forum/topico-estou-com-este-erro-146036
E já deletei o arquivo database.sqlite e rodei novamente o comando php artisan migrate para ver se conseguia arrumar, mas continua dando esse erro.
Alguma ideia do que pode ser pessoal?
Arquivo da migrate adiciona_campo_assistido:
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class AdicionaCampoAssistido extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('episodios', function (Blueprint $table) {
$table->boolean('assistido')->default(false);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('episodios', function (Blueprint $table) {
$table->dropColumn('assistido');
});
}
}
Arquivo EpisodiosController:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Temporada;
use App\Models\Episodio;
class EpisodiosController extends Controller
{
public function index(Temporada $temporada)
{
return view('episodios.index', [
'episodios' => $temporada->episodios,
'temporadaId' => $temporada->id
]);
}
public function assistir(Temporada $temporada, Request $request)
{
$episodiosAssistidos = $request->episodios;
$temporada->episodios->each(function (Episodio $episodio) use ($episodiosAssistidos) {
$episodio->assistido = in_array($episodio->id, $episodiosAssistidos);
});
$temporada->push();
}
}
Arquivo episodios.index.blade:
@extends('layout')
@section('cabecalho')
Episódios
@endsection
@section('conteudo')
<form action="/temporadas/{{ $temporadaId }}/episodios/assistir" method="post">
@csrf
<ul class="list-group">
@foreach($episodios as $episodio)
<li class="list-group-item d-flex justify-content-between align-items-center">
Episódio {{ $episodio->numero }}
<input type="checkbox" name="episodios[]" value="{{ $episodio->id }}">
</li>
@endforeach
</ul>
<button class="btn btn-primary mt-2 mb-2">Salvar</button>
</form>
@endsection