راکت
حل شده

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

1 پاسخ

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

ثبت پرسش جدید

پاسخ‌ها

1
TEFO
TEFO
@tefo.ha27

تخصص: لاراول

بهترین پاسخ

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

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

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

شاید پاسخ شما همین‌جا باشد

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

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