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

Como Usar o forelse no formulário

Boa tarde, eu tenho um form que ele traz um array do banco de dados pelo user_id, só que tem um problema depois que coloquei o forelse ele não está trazendo todos os dados, porque se tiver mais de um dados ele duplica o form.

Não sei se coloquei as div no lugar errado segue o código abaixo, A principio só queria passar uma mensagem caso não tenha cadastro relacionado ao id do usuário

@extends('layouts.app') @section('content')

<div class="container">
    <div class="row">

        <form class="form-horizontal " id="regForm" action="{{route('renovacao.store')}}" method="POST">
            <div class="card-panel white">
                <h4 class="center">Solicitar Renovação</h4>
                <div class="row"></div>
                {{ csrf_field()}}

                <div class="row">
                    @forelse($matricula as $matric)
                    <div class="row">
                            <right>
                             <a>**Dados Cadastrados**</a>
                        </right>
                        <div class="row"></div>
                        <div class="row"></div>
                        <div class="col s6 m6">
                        <div class="input-field {{$errors->has('user_id') ? 'has-error' : ''}} ">
                            <label for="produto">Nome do Pai:</label>
                           <input type="text" class="form-control" name="rematricula[{{ $loop->index}}][nomerespo]" value="{{ $matric->nomedopai }}">

                        </div>
                        </div>

                        <div class="col s6 m6">
                        <div class="input-field {{$errors->has('user_id') ? 'has-error' : ''}} ">
                            <label for="produto">Nome do Aluno(a):</label>
                            <input type="text" class="form-control" name="rematricula[{{ $loop->index}}][nomealuno]" value="{{ $matric->nomealuno }}">

                        </div>
                        </div>

                    </div>

                     <div class = "row">
                        <div class="col s12">

                            <a title="Voltar Para Página Principal" class="btn orange darken-4 btn-info left " href="/admin">Voltar
                                <i class="material-icons left">arrow_back_ios</i>
                            </a>

                            <button type="submit" class="btn orange darken-4 btn-info right">Confirmar
                                <i class="material-icons left">save</i>
                            </button>
                        </div>
                    </div>

                    @empty
                            <p>Não existe registro</p>
                  @endforelse


                </div>
            </div>    
        </form>

    </div>
</div>
@endsection

-- Controller que manda os dados para form

public function listardados(){
        $matricula = Matricula::where('user_id', Auth::id())->get();

        //dd($matricula);
        return view('dashboard.renovacao.teste', compact( 'matricula'));
    }
4 respostas
solução!

Solução

@section('content')
    @if($matriculas->count())
        @foreach($matriculas as $matric)
           <input type="text" class="form-control" name="rematricula[{{ $loop->index}}][nomealuno]" value="{{ $matric->nomealuno }}">
        @endforeach
    @else
        <p>Não possui matriculas.</p>
    @endif
@endsection

E outra dúvida como tratar se o usuário está inscrito ou não ? Se sim no botão de confirmar trocaria o nome para "Inscrito"

Oi Elyton, tudo bom? =)

Pra sua outra duvida, abre outro tópico aqui no forum, por favor?

Assim, se alguém tiver uma duvida parecida pode encontrar a resposta por lá.

Abraço.