محسن بستان
5 سال پیش توسط محسن بستان مطرح شد
1 پاسخ

ایجاد متغیر گلوبال متصل به دیتابیس

سلام.
دوستان بنده یک جدول در دیتابیس دارم که تنظیمات سایت داخلش نگهداری میشه. حالا من میخوام که هر بار که سایت لود میشه اون اطلاعات درون یک متغییر به صورت گلوبال ذخیره بشه. روشی که خودم استفاده کردم این بود که در پوشه کانفیگ یک فایل جدید اضافه کردم و اون رو بازگشت دادم. مشکل این کار اینجاست که چون قبل از اتصال دیتابیس اجرا میشه نمیتونه اطلاعات رو از دیتابیس بگیره . لطفا اگر راهی سراغ دارید بهم بگید.


ثبت پرسش جدید
TEFO
تخصص : لاراول
@tefo.ha27 5 سال پیش مطرح شد
1

سلام باید دیتا رو از دیتابیس بگیرین و به کل ویو ها پاس بدین
برای این کار در کلاس AppServiceProvider و متد register بنویسین

View::composer('*', function ($view) {
    $view->with('data', \DB::table('settings')->get());
});

ستاره یعنی همه فایل های view و متغییرتون هم میشه data جدول هم settings نوشتم که باید خودتون کاستومش کنین
البته این جا یک بدی هم داره برای هر view یک کوئری اجرا میشه اگه توی یک متغییر ذخیره کنین تنظیمات رو و یا view رو مشخص کنین ئرفورمنس بهتری دارین


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام