Olá, turma! Então, estou desenvolvendo uma view que resumidamente é um formulário de cadastrado de usuário com alguns inputs e dois desses inputs são do tipo select. Pois bem, para popular as opções de ambos os inputs já mencionados (nível do usuário e escolaridade), faço uso dos dados oriundos do banco de dados).
Criei dois controllers (EscolaridadeController, NivelController) e também dois models (Escolaridade e Nivel).
Abaixo os códigos (ou a parte mais importante deles):
EscolaridadeController:
<?php
namespace App\Http\Controllers;
use App\Models\Escolaridade;
use Illuminate\Http\Request;
class EscolaridadeController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$opcoesEscolaridades = Escolaridade::all();
return view('paginas.novo-usuario', compact('opcoesEscolaridades'));
}
}
Model Escolaridade
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Escolaridade extends Model
{
use HasFactory;
}
NivelController
<?php
namespace App\Http\Controllers;
use App\Models\Nivel;
use Illuminate\Http\Request;
class NivelController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$opcoesNivelUsuario = Nivel::all();
//dd($niveisUsuarios); // Adicione isso para depurar
return view('paginas.novo-usuario', compact('opcoesNivelUsuario'));
}
}
Model Nivel
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
//Nível do usuário (sistema EducaGestor)
class Nivel extends Model
{
protected $table = "nivel";
use HasFactory;
}
Inicialmente, a view funcionava quando apenas um input era preenchido, porém com dos dois inputs não funcionam. Acredito que o problema esteja na questão das rotas. Ao que tudo indica (não tenho certeza) não é permitido ter duas rotas simultâneas, como no código abaixo:
Rotas:
Route::get('/novo-usuario', [EscolaridadeController::class, 'index']);//Retorna toda escolaridade
Route::get('/novo-usuario', [NivelController::class, 'index']); //Retorna todos os níveis sistemicos
Route::post('/novo-usuario/salvar', [UsuarioController::class, 'store']);
A mensagem de erro: Se eu trocar a ordem da rotas o erro muda também, de acordo com a imagem:
Lembrando que se eu optar por apenas um único input/rota, o view funciona tranquilamente. Alguém pode me ajudar?