Laravel Tek Sorgu İle Gelen Veriyi Birçok Yerde Gösterme (AppServiceProvider)

Laravel ile bazen birçok yerden aynı veriyi çekmeye ve blade sayfasında yazdırmaya ihtiyaç duyarız. Örneğin kategori sayfası oluşturdunuz ve bu kategori isimlerini birden fazla sayfada göstermek istiyorsunuz yada işinize yarayacak bir sorgu sonucunu birçok yerde ayrı ayrı göstermek istiyorsunuz. Bunun için  app/Providers/AppServiceProvider.php  dosyasını açıyoruz. share kullanarak diğer sayfalara veriyi çekiyoruz.

Burada dikkat etmeniz gereken şey üstte DB kulanıyorsak DB tanımlamasını Eloquent kullanıyorsanızda Modeli tanımlamanızdır. Bunlardan hariç farklı özellikler kullanıyorsanız Controller'da tanımladığınız gibi burada da en üstte tanımlıyoruz. Ardından aşağıda örnektede gösterecewğim gibi use Illuminate\Support\Facades\View; tanımlamasını yapalım. Şimdi AppServiceProvider tanımlamamıza geçelim.

Laravelde AppServiceProvider Tanımlaması

<?php

namespace App\Providers;

use App\Models\ModelName;
use Illuminate\Support\Facades\View;
use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    /**
     * Register any application services.
     */
    public function register(): void
    {
        //
    }

    /**
     * Bootstrap any application services.
     */
    public function boot(): void
    {

        View::share('veriler', ModelName::query()->get());       
    }
}

Kodumuzda dikkat etmemiz gereken şeyler yukarıda da söyledim gibi model tanımlaması ve diğer kullandığımız paket ve sınıfların tanımlamasının yapılmasıdır. Kodumuzu yukardaki örnekteki gibi tanımladıktan sonra share komutuyla heryerden görünebilir yapıyoruz bundan sonrası normal sayfalarda foreach döngüsüne sokmak ve yazdırmak.

Bunuda aşağıdaki örnekte basitçe gösteriyorum:

//blade sayfamız

@foreach($veriler as $row)

         {{ $row->id }}<br>

         {{ $row->veriAdi }}<hr>

@endforeach

 blade sayfamıza da yukardaki kodu uygulayarak verileri görüntüleyebilirsiniz.

Bu Yazımada Göz Atabilirsiniz:

Laravel Carbon Kurulumu Ve Geçen Süre Gösterme



E-Bültenime Abone Ol



Anahtar Kelimeler: Laravel,AppServiceProvider,share
Yazan: Emre TENİK

Bu yazı: 94 kez okundu



Yorum Yap




Yorumlar: