1
resposta

Undefined variable: alunos (View: C:\web\controle-alunos\resources\views\matriculas\index.blade.php) Previous exceptions Undefined variable: alunos (0)

Não consigo listar os dados do Banco de dados , mas quando eu executo o var_dump($alunos) os dados aparecem na tela

class AlunosController extends Controller
{


    public function index() 
    {

        $alunos = aluno::all();      
        //var_dump($alunos);
        //exit();

        return view('matriculas.index');  

class Aluno extends Model {

public $timestamps = false; 
protected $fillable = [
    'nome',
    'cpf',
    'dtnasc',
    'telefone',
    'telefone_cel', 
    'email',
    'sexo' 
];

}

<ul class="list-group">
      @foreach($alunos as $aluno)
      <li class="list-group-item"><{{ $aluno->nome }}}></li> 
      @endforeach 
    </ul>
1 resposta

Olá Rafael,

Você está com a variável $alunos no seu controller, mas está tentando acessar na view, você vai precisar passar essa variável do controller para a view. No laravel isso pode ser feito de várias maneiras, segue abaixo dois exemplos:

return view('matriculas.index', ['alunos' => $alunos]);
// Ou
return view('matriculas.index', compact('alunos'));

Continuando no curso, na aula 03 atividade 02, o instrutor explica melhor isso de passar valores do controller para a view.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software