Veran, tengo una tabla User, con estas variables:
Schema::create('users', function(Blueprint $table){
$table->increments('id');
$table->string('name');
$table->string('second_name')->default('usuario');
$table->string('telefono')->default(123456789);
$table->date('fecha_nacimiento')->default('1990-01-01');
$table->unsignedInteger('ocupacion_id'); // Foranea de la tabla Ocupacion.
$table->foreign('ocupacion_id')->references('id')->on('ocupacions');
$table->string('dni')->default('12345678x');
$table->boolean('sexo')->default(false); // 0: Hombre || 1: Mujer
$table->boolean('vehiculo')->default(false);
$table->string('foto')->default('anonimo.jpg');
$table->boolean('activado')->default(false);
$table->string('email')->unique();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
Esta es la vista con el registro:
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row justify-content-center">
<div class="col-md-8">
<div class="card">
<div class="card-header"><h1>Registrarse</h1></div>
<div class="card-body">
<form method="POST" action="{{ route('register') }}" novalidate>
@csrf
<div class="form-group row">
<label for="name" class="col-md-4 col-form-label text-md-right">Nombre</label>
<div class="col-md-6">
<input id="name" type="text" class="form-control{{ $errors->has('name') ? ' is-invalid' : '' }}" name="name" value="{{ old('name') }}" placeholder="ej: Marco" required autofocus>
@if ($errors->has('name'))
<span class="invalid-feedback">
<strong>{{ $errors->first('name') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group row">
<label for="second_name" class="col-md-4 col-form-label text-md-right">Apellidos</label>
<div class="col-md-6">
<input id="second_name" type="text" class="form-control{{ $errors->has('second_name') ? ' is-invalid' : '' }}" name="second_name" value="{{ old('second_name') }}" placeholder="ej: Paván" required autofocus>
@if ($errors->has('second_name'))
<span class="invalid-feedback">
<strong>{{ $errors->first('second_name') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group row">
<label for="ocupacion" class="col-md-4 col-form-label text-md-right">Ocupación</label>
<?php
$ocu=App\Ocupacion::where('id','!=',1)->where('id','!=',6)->get();
?>
<div class="col-md-6">
<select id="ocupacion" class="form-control{{ $errors->has('ocupacion') ? ' is-invalid' : '' }}" name="ocupacion" required>
@foreach($ocu as $o)
<option value={{$o->id}} {{old('ocupacion')==$o->id ? 'selected' : ''}}>{{$o->nombre}}</option>
@endforeach
</select>
@if ($errors->has('ocupacion'))
<span class="invalid-feedback">
<strong>{{ $errors->first('ocupacion') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group row">
<label for="telefono" class="col-md-4 col-form-label text-md-right">Telefono</label>
<div class="col-md-6">
<input id="telefono" type="number" class="form-control{{ $errors->has('telefono') ? ' is-invalid' : '' }}" name="telefono" value="{{ old('telefono') }}" required autofocus>
@if ($errors->has('telefono'))
<span class="invalid-feedback">
<strong>{{ $errors->first('telefono') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group row">
<label for="fecha_nacimiento" class="col-md-4 col-form-label text-md-right">Fecha de nacimiento</label>
<div class="col-md-6">
<input id="fecha_nacimiento" type="date" class="form-control{{ $errors->has('fecha_nacimiento') ? ' is-invalid' : '' }}" name="fecha_nacimiento" value="{{ old('fecha_nacimiento') }}" required autofocus>
@if ($errors->has('fecha_nacimiento'))
<span class="invalid-feedback">
<strong>{{ $errors->first('fecha_nacimiento') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group row">
<label for="dni" class="col-md-4 col-form-label text-md-right">DNI</label>
<div class="col-md-6">
<input id="dni" type="text" class="form-control{{ $errors->has('dni') ? ' is-invalid' : '' }}" name="dni" value="{{ old('dni') }}" placeholder="ej: 12345678x" required autofocus>
@if($errors->has('dni'))
<span class="invalid-feedback">
<strong>{{ $errors->first('dni') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group row">
<label for="sexo" class="col-md-6 col-form-label text-md-right">¿Cuál es su sexo?</label>
Hombre<input type="radio" name="sexo" value=0 checked />
Mujer<input type="radio" name="sexo" value=1 />
</div>
<div class="form-group row">
<label for="vehiculo" class="col-md-6 col-form-label text-md-right">¿Tiene usted algún vehículo?</label>
Si<input type="radio" name="vehiculo" value=1/>
No<input type="radio" name="vehiculo" value=0 checked/>
</div>
<div class="form-group row">
<label for="email" class="col-md-4 col-form-label text-md-right">Correo Electronico</label>
<div class="col-md-6">
<input id="email" type="email" class="form-control{{ $errors->has('email') ? ' is-invalid' : '' }}" name="email" value="{{ old('email') }}" placeholder="ej: sanchezquesano82@mail.com" required>
@if($errors->has('email'))
<span class="invalid-feedback">
<strong>{{ $errors->first('email') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group row">
<label for="password" class="col-md-4 col-form-label text-md-right">Contraseña</label>
<div class="col-md-6">
<input id="password" type="password" class="form-control{{ $errors->has('password') ? ' is-invalid' : '' }}" name="password" required>
@if ($errors->has('password'))
<span class="invalid-feedback">
<strong>{{ $errors->first('password') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group row">
<label for="password-confirm" class="col-md-4 col-form-label text-md-right">Confirmar Contraseña</label>
<div class="col-md-6">
<input id="password-confirm" type="password" class="form-control" name="password_confirmation" required>
</div>
</div>
<div class="form-group row mb-0">
<div class="col-md-6 offset-md-4">
<button type="submit" class="btn btn-primary">
Registrarse
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection
La historia es que quiero que haya 2 tipos de formulario, uno para empleados normales y otro para lectores, a los que unicamente se les pedira nombre, email y contraseña. Y aqui esta mi problema, pues tengo acceso a la vista, pero no a la ruta de web.php, ya que forma parte de los Auth::routes();
. Mi idea es que tengo lo siguiente:
<li class="nav-item dropdown">
<a id="navbarDropdown"
class="nav-link dropdown-toggle"
href="#" role="button"
data-toggle="dropdown"
aria-haspopup="true"
aria-expanded="false"
>Registrarme<span class="caret"></span>
</a>
<div class="dropdown-menu" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="{{ url('/register') }}">
Registrarme como Lector
</a>
<a class="dropdown-item" href="{{ url('/register') }}">
Registrarme como Empleado
</a>
</div>
</li>
Si pudiese acceder a la ruta, cambiaria las direcciones a ‘/register/1’ y ‘/register/0’, añadiendo así una variable con la cual le añadiria un “if” a la vista con la que de ser un lector omitiria las variables no deseadas. ¿Donde accedo a eso?