İki farklı controllerdan data gönderebilirsiniz, sonuçta bir controllera ait bir şey değil.
@include direktifinin ikinci parametresi içeri aktarılacak değişkenler içindir. Örneğin
// controller
public function index($slug)
{
$page = Page::whereSlug($slug)->firstOrFail();
$photos = $page->photos;
return view('page', compact('page','photos'));
}
// page.blade.php
<h1>{{ $page->title }}</h1>
{!! $page->content !!}
@if(count($photos))
@include('page-gallery', compact('photos','page'))
@endif
// page-gallery.blade.php
<h2>Galeri</h2>
<div class="gallery">
@foreach($photos as $photo)
<img src="{{ asset($photo->photo) }}" alt="{{ $page->title }}">
@endforeach
</div>
Yukarıdaki örneğe bakarsanız ben page-gallery.blade.php sayfasını aslında $page ve $photos verisini oluşturduğum herhangi bir yerden ekrana basabilirim.