2017-07-30 8 views
0

c'est ma routerendement Laravel ne fonctionne pas

Route::get('/', '[email protected]'); 

ceci est ma page de mise en application

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <title>Dateneingabe</title> 

    <link rel="stylesheet" href="/css/app.css"> 
    <script src="{{asset('/js/jquery-3.2.1.min.js')}}"></script> 

</head> 
<body> 
    @yield('contentSpiel') 
    @yield('A') 
</body> 
</html> 

Voici mon @yield ('contentSpiel')

@extends('app') 

@section('contentSpiel') 

      <div class="form-group"> 
       <label for="">Spiele</label> 
       <select class="form-control input-sm" name="spiele" id="spiele"> 

       @foreach($alleSpiele as $alleSpieleOutput)
  
        <option value="{!! $alleSpieleOutput->heimmannschaft !!}">{{$alleSpieleOutput->heimmannschaft}}</option>
  
       @endforeach 
       </select> 
      </div> 

<script> 
    $('#spiele').on('change', function(e){ 
     console.log(e); 

     var spielID = e.target.value; 

     //ajax 
     $.get('/spieler-table?spielID=' + spielID, function(data){ 

      //success data 
      console.log(data); 
     }); 
    }); 
</script> 

@endsection 

et voici ma section A

@extends('app') 

@section('A') 

<h2>asd</h2> 

@endsection 

Je n'arrive pas à comprendre pourquoi je reçois seulement la section @yield ('contentSpiel') dans mon navigateur. Qu'est-ce que je dois changer, les deux @yields sont dans mon navigateur?

+0

Pourquoi étendez-vous l'application deux fois? Êtes-vous combiner deux vues dans un contrôleur ou quelque chose? – Ohgodwhy

Répondre

0

Vous ne pouvez charger qu'une vue depuis votre contrôleur. maintenant si vous avez un point de vue, mais vous voulez donner plusieurs parties de celui-ci alors u peut essayer cet exemple:

@extends('layouts.app') 


    @section('contentSpiel') 
    <div class="form-group"> 
    <label for="">Spiele</label> 
<select class="form-control input-sm" name="spiele" id="spiele"> 
@foreach($alleSpiele as $alleSpieleOutput) <option value="{!! $alleSpieleOutput->heimmannschaft !!}">$alleSpieleOutput->heimmannschaft}}</option>   
    @endforeach 
</select> 
    </div> 

    <script> 
    $('#spiele').on('change', function(e){ 
    console.log(e); 

    var spielID = e.target.value; 

    //ajax 
    $.get('/spieler-table?spielID=' + spielID, function(data){ 

    //success data 
    console.log(data); 
    }); 
    }); 
    </script> 
    @endsection 

    @section('A') 
    <h2>asd</h2> 
    @endsection 

maintenant si vous imprimez votre valeur en un point de vue et que vous voulez charger une autre vue comme barre de Sider dans votre maître alors juste l'inclure.

ceci est ma page de mise en application

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <title>Dateneingabe</title> 

    <link rel="stylesheet" href="/css/app.css"> 
    <script src="{{asset('/js/jquery-3.2.1.min.js')}}"></script> 

</head> 
<body> 
    @yield('contentSpiel') 
    @include('your_view_file_path') 
</body> 
</html> 
0

dans mise en page:

<body> 
    @yield('contentSpiel') 
    @yield('A') 
</body> 

@stack('scripts') 

contecontentSpiel.blade.php vue (ce point de vue doit être retourné en action)

@extends('app') 

@section('contentSpiel') 

    <div class="form-group"> 
     ... 
    </div> 

@endsection 

@push('scripts') 
    <script> 
     $('#spiele').on('change', function(e){ 
      ... 
     }); 
    </script> 
@endpush 

@section('A') 
    ... 
@endsection 

si vous voulez avoir plusieurs fichiers de lame ... vous pouvez créer sectionAForContentSpiel.blade.php et déplacer ici la section Un code

@section('A') 
    ... 
@endsection 

puis dans contecontentSpiel.blade.php

@include('sectionAForContentSpiel') 

PS: utilisant @stack('scripts') et @push('scripts') - @endpush vous pouvez inclure des scripts au bas de la page.

0

Je pense que vous devez modifier votre page de mise en application comme:

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <title>Dateneingabe</title> 

    <link rel="stylesheet" href="/css/app.css"> 
    <script src="{{asset('/js/jquery-3.2.1.min.js')}}"></script> 

</head> 
<body> 
    <section class="contentSpiel"> 

    @yield('contentSpiel') 

    </section> 


    <section class="A"> 

    @yield('A') 

    </section> 

</body> 
</html> 

Espoir cette aide pour vous !!!